feat: collapse status notices into a session-line indicator and Ctrl+b n popup - #16
Merged
Conversation
…b n popup The notices were status lines of their own below the session line. Each held a row of pane height for its whole life — the quota and maintenance warnings never clear on their own — and every appearance resized every pane in the session. They are now a compact "⚠ N notices" counter at the right of the session line, red while the quota warning is among them and yellow otherwise, so the panel is always exactly one line tall. A new Ctrl+b n popup shows the notices in full (overriding tmux's stock next-window, which has nothing to act on with the window list hidden), and --status prints the same text from the login node via a notices file the session maintains in ~/.cache/sinteractive/. While the quota warning holds, the counter shimmers — a lighter band sweeping through the red text, like Claude Code's spinner verbs — so the one notice that needs acting on keeps catching the eye. The status loop ticks at 0.2s only while animating; everything else in it is gated on wall-clock deltas, so the faster tick costs only the frame. The yellow countdown pulse is keyed to the wall clock rather than the tick count so its beat survives the faster tick. The Detach hint is out of the status line entirely; it already lives in the Ctrl+b h help popup, which now also lists Ctrl+b n. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HRyadhPDaFcD7CDstL7U9t
jayhesselberth
force-pushed
the
notice-indicator
branch
from
August 27, 2026 21:39
a1adab2 to
35c4870
Compare
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
The notices below the status bar had grown to two rows (quota + maintenance warnings, Claude Code hint), each holding a row of pane height for its whole life and resizing every pane whenever one appeared or cleared. This collapses all of it into a compact
⚠ N noticescounter on the session line itself, so the panel is always exactly one status line tall.What
⚠ N notices Ctrl+b njoins the right side of the session line — red while the quota warning is among the notices, yellow otherwise, absent when there is nothing to say. While the quota warning holds, the counter shimmers (a lighter band sweeping through the red text, like Claude Code's spinner verbs); the status loop ticks at 0.2 s only while animating, and everything else in it is gated on wall-clock deltas.Ctrl+b npopup: shows the notices in full, same pattern as theCtrl+b hhelp popup. Overrides tmux's stock next-window, which has nothing to act on with the window list hidden.--status: prints the same notice text from the login node, reading the notices file (~/.cache/sinteractive/JOBID.notices, kind-tagged plain text) the session maintains and removes at teardown.Ctrl+b n.Testing
Verified end-to-end on Alpine with a live session: indicator absent → 1 yellow notice (hint) → 2 red notices with shimmer frames advancing (fake over-quota cache + poke) → cleared back to yellow within a tick of
--check-quota's poke; popup and--statusrender both severities;.noticesfile removed at teardown.bash -n,shellcheck --severity=warning, andgroff -wwall clean locally.🤖 Generated with Claude Code
https://claude.ai/code/session_01HRyadhPDaFcD7CDstL7U9t