Skip to content

tui: /models dialog is fixed-size and cannot be maximized #50527

Closed as not planned

Description

@fede-kamel

Summary

The TUI /models picker (DialogModel in packages/tui/src/component/dialog-model.tsx) is a fixed-size dialog. With several providers configured the list is cramped, and there is no way to give it more of the terminal.

Split out of #50513, which now tracks the CLI half only.

Current behavior

  1. Fixed dialog size — the dialog width comes from a size prop (medium / large / xlarge → 60 / 88 / 116 columns) and does not adapt to the terminal.
  2. No maximize — no keyboard shortcut or action-bar button expands the list to fill the terminal.
  3. Cramped scroll area — with 80+ models the visible slice is a small fraction of the list.

Expected behavior

  • A way to expand the /models dialog to (close to) full terminal width and height.
  • Ideally a general Dialog capability rather than one special-cased in DialogModel, so other dialogs can opt in.

Notes

packages/tui/src/ui/dialog.tsx already reads useTerminalDimensions() for paddingTop, so the dimensions are available where the width is computed.

CONTRIBUTING says UI changes need a design review with the core team, so filing this as an issue first rather than opening a PR — happy to implement whatever shape the team prefers (keybinding vs. action-bar toggle vs. size-cycling).

Activity

  1. fede-kamel commented on Sep 22, 2026

    @fede-kamel
    Author

    Duplicate of #47600, which reported the same fixed-width DialogModel problem on 2026-09-06. I filed this without checking the duplicate-detection bot's comment on #50513, which had already pointed at it — apologies for the noise.

    The extra detail from this issue (the missing maximize affordance, and where the width is decided in packages/tui/src/ui/dialog.tsx) has been moved to #47600 so nothing is lost. Closing in favour of that one.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions