Skip to content

feat(tui): move the agent and model line above the input box - #156

Merged
quickbeard merged 2 commits into
mainfrom
meta-row-above-prompt
Aug 2, 2026
Merged

quickbeard merged 2 commits into
mainfrom
meta-row-above-prompt

Conversation

@quickbeard

Copy link
Copy Markdown
Owner

Moves Build manual · MiniMax/MiniMax-M3 netGate out of the input box and puts it above the box, directly below the Baked for trailer.

Before / after

BEFORE                                    AFTER

  All good.                                 All good.

  [•] backfill the tests                    [•] backfill the tests
  ✺ 1 of 2 finished · ctrl+b …              ✺ 1 of 2 finished · ctrl+b …

  Baked for 1.6s                            Baked for 1.6s

▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄                       Build manual · M1 Test
  what you are typing                     ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
                                            what you are typing
  Build manual · M1 Test                  ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀                       2 (0%)  ctrl+p commands
  2 (0%)  ctrl+p commands

The row describes what the next prompt will use, not what is in the box, so it reads as a header for the input rather than a caption under it — and it now groups with the trailer and todo panel as one status block. The box holds only the text you are typing.

Net height is unchanged: the box loses its interior blank row, the pinned block's gap spends one.

Spacing rework

The pinned block is now a single <box flexShrink={0} paddingTop={1} gap={1}> wrapping the todo panel, the trailer and the prompt group. gap only separates the parts that actually render, so no part needs padding for a neighbour that may be absent. That lets #155's scaffolding go:

  • MessageTrailer loses its spaced prop and pinned paddingTop/paddingBottom (back to just paddingLeft={3})
  • TodoPanel loses the vertical padding it took on, and todoActive — added purely so Session could tell whether the panel had supplied a blank row — is gone with the todoPanelVisible memo

todo-panel.tsx and todo-panel-model.ts are back to their pre-#155 shape.

Notes

  • session_prompt_right (the plugin slot on the right of that row) moved with it.
  • DIVERGENCES.md: new row for the move, and the MessageTrailer row updated for the gap container.
  • CHANGELOG.md: one entry. Heads up — the merge of feat(tui): pin the last message trailer and shed busy footer hints #155 emptied the whole ## Unreleased TUI section, including the three entries that predated it (Tighter prompt and footer spacing, Visible selection in the question panel, No stray line on tool output). If that was accidental, they need restoring separately; this PR only adds its own entry back under a fresh ### TUI heading.
  • The pinned-position test in message-trailer.view.test.tsx now asserts the full order — todo panel → trailer → agent/model line → box top edge.
  • bun typecheck clean, prettier clean, full TUI suite 263 pass / 1 skip / 0 fail.

One judgement call worth a look: there is one blank row between Baked for 1.6s and the agent/model line, because the uniform gap treats them as separate parts. Making them adjacent is a one-line change if you prefer them tighter.

🤖 Generated with Claude Code

quickbeard and others added 2 commits August 2, 2026 18:23
The agent/permission-mode/model/provider/variant row sat inside the
prompt box, under the textarea. It now sits above the box, below the
pinned trailer, so the todo panel, the last turn's duration and the
current selection read as one status block above the prompt and the box
holds only what you are typing.

The pinned block above the prompt becomes a single box with gap={1}
wrapping the todo panel, the trailer and the prompt group. Spacing is
now owned by the container instead of by each part guessing at its
neighbours, which drops the trailer's `spaced` prop, the todo panel's
vertical padding and the `todoActive` predicate added for it.

Net height is unchanged: the input box loses its interior blank row and
the pinned block's gap spends one.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@quickbeard
quickbeard merged commit 020b63b into main Aug 2, 2026
0 of 5 checks passed
@quickbeard
quickbeard deleted the meta-row-above-prompt branch August 2, 2026 11:41
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