panel: on/off is persistent; what it shows is a separate setting
hiding the panel with the shortcut used to last only until another agent
started waiting: one action meant both "not now" and "off", with an
invisible override on top of a three-way mode. now there are two visible
settings: the panel is on or off (ctrl+opt+cmd+e and a checkmarked "Show
Panel" item), and while on it shows always or only when agents are waiting
("Panel Shows"). off stays off. turning it on with nothing to show peeks
for 3 seconds. the old mode setting migrates.
selftest covers the rules; it fails if a waiting agent can show a panel
that is off.
Igor Soarez igor@soarez.org
Thu, 22 Oct 2026 00:02:16 +0300
3 files changed,
130 insertions(+),
102 deletions(-)
M
README.md
→
README.md
@@ -42,13 +42,12 @@ - **Floating panel** (`menubar/panel.swift`): an always-on-top HUD that never
takes focus, on every Space and over full-screen apps. It lists the agents waiting for you (blocked, done) and summarizes the rest (`◐ 2 working · ○ 15 idle`); click a row to jump there, drag to move it. - **⌃⌥⌘E** shows or hides it from anywhere. Modes (menu bar, "Show Panel - Automatically"): *When agents are waiting* (default; appears when - something is blocked or done, hides when you have attended to everything; - compact), *Always* (with a "Show all / Show less" toggle for the full - list), *Off*. Hiding it with the shortcut lasts until another agent starts - waiting. The panel is always dark, in herdr's palette, so it reads the same - over any desktop. + **⌃⌥⌘E** (or "Show Panel" in the menu) turns it on or off; off stays off + until you turn it back on. While on, "Panel Shows" picks *Only When Agents + Are Waiting* (default: it hides itself while nothing waits; turning it on + then shows it for 3 seconds so you see it is armed; compact) or *Always* + (with a "Show all / Show less" toggle for the full list). The panel is + always dark, in herdr's palette, so it reads the same over any desktop. - **Jump shortcut**: **⌃⌥⌘U** jumps to the top waiting agent from anywhere, like clicking the tmux status line. Both shortcuts live in `~/.config/dingger/config.toml` (menu bar, Settings…), reloaded on save.