by @cush
Focus Mode
Silences notifications, dims the screen, sets a 25-minute timer, then restores everything.
- shellswaync-client
- shellbrightnessctl
- notify🎯 Focus engaged
- waitwait 1500s
- shellswaync-client
- shellbrightnessctl
- notify✅ Focus session complete
Readme
Why this exists
Pomodoros work, but the friction of starting a focus session — silence Slack, set a timer, dim the lights — kills the habit. This workflow collapses the whole ritual into one chord.
The wait is set to 25 minutes (the Pomodoro default). Tweak it. The
shells assume swaync-client for notifications and brightnessctl
for screen brightness — adapt to your stack.
Variants
- Deep work mode: bump the wait to 50 minutes, add a
shellto close Slack entirely. - Reading mode: drop the brightness change, keep the silence, longer wait.
- Meeting prep: shorten to 5 minutes, end with a chime instead of a notify.
KDL source
// Focus mode — by @cush
workflow "Focus Mode" {
subtitle "Silences everything, dims the screen, sets a 25-minute timer."
trigger {
chord "super+alt+f"
}
shell "swaync-client -d on"
shell "brightnessctl set 30%"
notify "🎯 Focus engaged"
wait 1500.0
shell "swaync-client -d off"
shell "brightnessctl set 80%"
notify "✅ Focus session complete"
}