Skip to content

feat(tui): notify when a session enters the waiting state#216

Open
jongio wants to merge 1 commit into
mainfrom
idea/attention-bell
Open

feat(tui): notify when a session enters the waiting state#216
jongio wants to merge 1 commit into
mainfrom
idea/attention-bell

Conversation

@jongio

@jongio jongio commented Jul 3, 2026

Copy link
Copy Markdown
Owner

Summary

Adds a notify_on_waiting setting that rings the terminal bell and shows a short footer message when a session enters the waiting state (the AI has responded and is waiting for user input).

Closes #209

Behavior

  • Fires once per transition into waiting, not on every scan.
  • Sessions already waiting when dispatch starts do not trigger the bell (the first scan only records a baseline).
  • A session that leaves and later re-enters waiting notifies again.
  • When several sessions enter waiting in the same scan, the bell rings once and the footer reads "N sessions are waiting".
  • Off by default. Toggle it from the Settings panel (,) as "Notify On Waiting", or set "notify_on_waiting": true in config.json.

Changes

  • internal/config/config.go: new NotifyOnWaiting bool field.
  • internal/tui/handlers.go: bell command with a swappable seam, plus transition detection in handleAttentionScanned.
  • internal/tui/model.go, internal/tui/cmdpalette.go: wire the setting through the Settings panel load/save paths.
  • internal/tui/components/configpanel.go: new "Notify On Waiting" toggle row.
  • README: documented the option, updated the example config and Settings panel field list.

Testing

  • go build ./...
  • go vet ./...
  • golangci-lint run ./... (0 issues)
  • go test ./... -count=1 (all packages pass)
  • New tests cover baseline suppression, transition, disabled setting, steady state, re-entry, multiple sessions, forgotten sessions, the bell command, and the handler wiring.

Add a notify_on_waiting setting that rings the terminal bell and shows a
footer message when a session transitions into the waiting state (the AI
has responded and is waiting for user input).

The bell fires once per transition into waiting, not on every scan, and
sessions already waiting when dispatch starts do not trigger it. Leaving
and re-entering waiting notifies again. The setting is off by default and
can be toggled from the Settings panel (,) or set in config.json.

Closes #209

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@jongio jongio added the idea Feature idea from the idea pipeline label Jul 3, 2026
@jongio jongio self-assigned this Jul 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

idea Feature idea from the idea pipeline

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Ring a bell when a session starts waiting for input

1 participant