VerticalTwo-line status bar for session identity and runtime metrics.
Current working directory to display
Additional arguments passed to parent
Mode badges color the input mode; the approval mode is colored text.
Whether unrestricted compatibility mode is active.
Compose the status bar layout.
Hide the cwd on very narrow terminals.
The git branch stays visible at any width (unless disabled via
HIDE_GIT_BRANCH) and ellipsizes to fit; only the cwd is dropped
outright to reclaim space when the terminal gets narrow.
Stop the spinner timer so it can't tick on a detached widget.
Set reactive values after mount to trigger watchers safely.
Update mode indicator when mode changes.
Update the three-state approval indicator.
Update cwd display when it changes.
Update branch display when it changes.
Update status message display.
Start or stop the spinner and re-render when connection state changes.
Re-render the connection indicator when the queued count changes.
Show or clear an animated busy indicator in the status-message slot.
Reuses the shared status-bar spinner so heavier UI operations (e.g. a model switch that imports a provider package) show activity instead of appearing to hang.
Set the connection indicator state.
Set the number of messages waiting in the queue.
Set the current input mode.
Set the approval mode.
Set the compatibility unrestricted state.
Set the status message with explicit source ownership.
Each source stores its own message. Hooks take display priority while they have a non-empty message; clearing hooks restores any stored agent message instead of blanking the slot. Agent writes never erase an active hook status, and hook completion never erases a stored agent status.
Update the combined token and cost display when tokens change.
Update the combined token and cost display when cost changes.
Update rubric display when active rubric state changes.
Set the rubric status label.
Set the token count.
Forces a display refresh even when the value is unchanged. During
streaming, show_pending_tokens replaces the widget text without
changing the reactive token value, so a later update with the same
count still needs to re-render the exact count.
Set the active model's context limit.
Set cumulative input and cache token counts for the active thread.
Set the cumulative thread cost shown beside context tokens.
Show pending tokens while preserving the cumulative cost.
Update the model display text.