Skip to content

feat(ui): status-bar active-agent count + PR #231 review fixes + shortcut docs - #232

Merged
yogthos merged 3 commits into
mainfrom
feat/status-bar-agents-and-review-fixes
May 30, 2026
Merged

feat(ui): status-bar active-agent count + PR #231 review fixes + shortcut docs#232
yogthos merged 3 commits into
mainfrom
feat/status-bar-agents-and-review-fixes

Conversation

@yogthos

@yogthos yogthos commented May 30, 2026

Copy link
Copy Markdown
Collaborator

Bundles three related UI changes (per request, shipping together).

1. Status bar: active background-agent count

New agents:N segment on the bottom status line, shown only when N>0 (like the mode/compaction badges). N = BackgroundStore::running_count() (in-flight background task subagents), read each render via the bg_store already in scope at all 44 StatusLine::render call sites.

Scoped to agents only (confirmed with you): dirge has no background-shell registry — bash runs synchronously within a tool call — so there's no persistent 'shells' count to show.

2. Code-review findings from PR #231

3. Keyboard-shortcut doc corrections

Updated /help (cmd_misc.rs), session help (cmd_session.rs), and docs/tui.md to list the current subagent chat-window shortcuts (Ctrl+K kill subagent, Ctrl+X close window, Ctrl+N/P switch windows, Ctrl+O expand tool result).

Tests

  • New status::testsagents:N badge shown when active, hidden at zero.
  • Full feature-matrix suite green at -D warnings (2143 passed).

Yogthos added 3 commits May 29, 2026 21:31
From the review of PR #231:

- #1 (run.rs): the cap notice's new_messages.push is a legitimate part of
  run_agent_loop's returned message list, but the comment overclaimed that
  headless/subagent collectors and resumed models read it — they drive display
  from the LoopEvent stream and discard the return value. Comment corrected to
  describe it as a return-value contract nicety, not the display mechanism.

- #2 (provider/mod.rs): headless run_print dropped SystemNotice into its
  catch-all, so a --print run hitting the turn cap reported a clean success with
  no truncation signal. It now prints the notice to stderr.

- #3 (text_output.rs): documented the deliberate divergence between the live
  <system>/warning-color notice and persisted <sys>/system-color session
  history, cross-referencing render_session.

- #4 + altitude (text_output.rs): extracted write_prefixed_lines() shared by
  write_user_lines and write_system_lines, removing the copy-paste and making
  blank/empty-line handling identical by construction.
Adds an `agents:N` segment to the bottom status line, shown only when N>0
(like the compaction/mode badges) so the bar stays quiet during normal
single-agent work. N is BackgroundStore::running_count() — the number of
in-flight background `task` subagents — read at each render and threaded
into StatusLine::render via the bg_store already in scope at every call site.

(Scoped to agents only: dirge has no background-shell registry — bash runs
synchronously within a tool call — so there is no persistent 'shells' count
to display.)
Update the /help keybinding list (cmd_misc.rs), the session help (cmd_session.rs),
and docs/tui.md to reflect the current subagent chat-window shortcuts: Ctrl+K
kills the focused subagent, Ctrl+X closes the active chat window, Ctrl+N/Ctrl+P
switch between subagent chat windows, and Ctrl+O expands a collapsed tool result.
@yogthos
yogthos merged commit 3933c9b into main May 30, 2026
9 checks passed
@yogthos
yogthos deleted the feat/status-bar-agents-and-review-fixes branch May 30, 2026 01:35
allen-munsch pushed a commit to allen-munsch/dirge that referenced this pull request Jun 3, 2026
…nts-and-review-fixes

feat(ui): status-bar active-agent count + PR dirge-code#231 review fixes + shortcut docs
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant