style(tui): polish agent picker layout, cards, and status bars#3543
Merged
Conversation
Replaces the hand-rolled help strings with the shared dialog helpers, matching the style of other dialogs. Removes the now-unused percentLabel helper and its test. Assisted-By: Claude
…rapping Drop trailing key bindings instead of letting the help line soft-wrap on narrow terminals; fix TestAgentPickerCardAtMatchesRenderedText to assert both subtitle and status-bar rows; add TestAgentPickerDetailsHelpNeverWraps. Assisted-By: claude-opus-4-5
Remove vertical padding from cards; update agentPickerCardHeight and windowing test height math accordingly. Assisted-By: Claude
Drop redundant double-click status-bar binding, shorten lean binding help, and center title/subtitle/status bar within the content column. Assisted-By: Claude
Thick border on selected card, highlighted lean-mode label when ticked, muted brackets around bright label on Open Board button.
docker-agent
reviewed
Jul 8, 2026
docker-agent
left a comment
Contributor
There was a problem hiding this comment.
Assessment: 🟢 APPROVE
The diff was reviewed for bugs introduced by the changed + lines. No issues were found.
Scope reviewed:
fitHelpPairshelper logic (narrow-terminal truncation)- Card height invariants (7 → 5 row change) and panel width (~99 → ~83)
- Mouse hit-testing math consistency with render geometry
dialog.RenderHelpKeysintegration in status bars and YAML details dialog- Accent border rendering for selected card
- Lean Mode / Open Board button rendering
- New regression tests for
fitHelpPairsand hit-testing
The refactor cleanly removes duplicated key-rendering logic, preserves hit-testing invariants, and the new tests provide good regression coverage.
aheritier
approved these changes
Jul 8, 2026
Piyush0049
pushed a commit
to Piyush0049/docker-agent
that referenced
this pull request
Jul 15, 2026
…3eca46 style(tui): polish agent picker layout, cards, and status bars
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.
The agent picker had a handful of rough edges: the status bars used a hand-rolled key rendering path while every other dialog had already moved to
dialog.RenderHelpKeys, cards were taller than necessary, the panel was wider than it needed to be, and the selected card had no visual accent to make it stand out.This change brings the picker in line with the rest of the TUI. The main help line and the YAML details dialog both now go through
dialog.RenderHelpKeys, which removes duplicated logic and gives them the same look as other dialogs. AfitHelpPairshelper was extracted so that on narrow terminals trailing bindings are dropped cleanly rather than soft-wrapping and distorting the layout. Card height was reduced from 7 to 5 rows by removing vertical padding, and the panel was narrowed from ~99 to ~83 columns with its title, subtitle, and status bar centered. The redundant "double-click select" binding was dropped. The selected card now gets a thick accent border, the Lean Mode label is rendered brighter when ticked, and the Open Board entry is rendered as a button-like control.Mouse hit-testing invariants (
panelSize == render geometry) are preserved throughout; existing tests were updated and new regression tests forfitHelpPairsand hit-testing were added.