Summary: With Settings → Notifications → "Pipe notifications" toggled OFF, alerts sent by pipes to POST localhost:11435/notify are still displayed via the native notification panel. The toggle doesn't gate the pipe-notification path.
Environment: screenpipe app v2.5.12 (engine 0.4.0), macOS 26.5 (25F71), arm64.
Repro:
- Settings → Notifications → turn Pipe notifications OFF (every toggle on the page OFF, in fact)
- Have any installed pipe POST to
http://localhost:11435/notify
- The native SwiftUI notification panel appears anyway
Log evidence (screenpipe-app.<date>.log) — the pipe path runs with no gating check:
INFO screenpipe_app::notifications::routes: Received notification request: NotifyPayload { title: "🔔 reminders", ... }
INFO screenpipe_app::commands: show_notification_panel called
INFO screenpipe_app::commands: Using native SwiftUI notification panel
INFO screenpipe_app::notifications::routes: Notification panel shown
Compare with the display-change path, which does honor its setting (this string exists in the binary and fires when that toggle is off):
notify: skipped (display-change toasts disabled)
Expected: when "Pipe notifications" is OFF, requests hitting the /notify route from pipes should be dropped (ideally logged as skipped (pipe notifications disabled), mirroring the display-change behavior).
Workaround: editing each pipe's instructions/scripts to stop calling /notify — works but defeats the purpose of the global toggle.
Summary: With Settings → Notifications → "Pipe notifications" toggled OFF, alerts sent by pipes to
POST localhost:11435/notifyare still displayed via the native notification panel. The toggle doesn't gate the pipe-notification path.Environment: screenpipe app v2.5.12 (engine 0.4.0), macOS 26.5 (25F71), arm64.
Repro:
http://localhost:11435/notifyLog evidence (
screenpipe-app.<date>.log) — the pipe path runs with no gating check:Compare with the display-change path, which does honor its setting (this string exists in the binary and fires when that toggle is off):
Expected: when "Pipe notifications" is OFF, requests hitting the
/notifyroute from pipes should be dropped (ideally logged asskipped (pipe notifications disabled), mirroring the display-change behavior).Workaround: editing each pipe's instructions/scripts to stop calling
/notify— works but defeats the purpose of the global toggle.