From 98fc6036ee817a92810e060c80d48aa6a936a1ab Mon Sep 17 00:00:00 2001 From: "Danilo M." Date: Thu, 15 Oct 2026 11:25:50 +0200 Subject: feat(status): quiet mode mutes the Claude and opencode sounds A new registry mode, status.quiet, with a row on the status page. Both tools will play their sounds through notify-sound, which asks statusctl and plays nothing while quiet is on, so their popups stay and only the sound goes. Presentation sets quiet and restores it afterwards, like dnd and nolock: a sound during a call or a game is what quiet is for. notify-sound ignores any argument it has no sound for, because the opencode notifier runs its command on every event, session_started and user_message included. Co-Authored-By: Claude Opus 5.5 --- desktop/modules/status/test-statusctl.sh | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'desktop/modules/status/test-statusctl.sh') diff --git a/desktop/modules/status/test-statusctl.sh b/desktop/modules/status/test-statusctl.sh index afe56d4..170101c 100755 --- a/desktop/modules/status/test-statusctl.sh +++ b/desktop/modules/status/test-statusctl.sh @@ -149,5 +149,11 @@ kill "$watcher5" 2>/dev/null wait "$watcher5" 2>/dev/null check "first write, created by link, redraws" "1" "$(grep -c '"class": *"gaming"' "$out5")" +# quiet is a plain mode like dnd. +"$ctl" quiet set 1 +check "quiet set 1" "1" "$("$ctl" quiet get)" +"$ctl" quiet toggle +check "quiet toggle from 1" "0" "$("$ctl" quiet get)" + printf '\n%d passed, %d failed\n' "$pass" "$fail" [[ "$fail" -eq 0 ]] -- cgit v1.2.3