Simplifies the model selection UI by rendering the free label as plain text rather than a styled span component, reducing unnecessary markup while maintaining clarity about model pricing.
Improves the provider auth flow by restoring the model selection screen after successful provider connection, allowing users to immediately select a model without seeing intermediate dialogs. Also removes redundant dialog close calls in the form component since navigation is now handled at the dialog provider level.
Users can now authenticate providers using both code-based flows (entering an authorization code) and automatic flows. The dialog now clearly displays the authorization URL, allows code entry with retry capability, and shows a waiting indicator during automatic authentication.
- Moved animated working indicator to the left side with retry status, and shimmer indicator to the right side for better visual hierarchy
- Added shell mode context to keybind hints so users see 'exit shell mode' when in shell mode instead of normal mode commands
- Set session status to busy at loop start for more accurate session state tracking
Hide agent tab selector and show shimmer animation during agent work. Use accent color for queued messages so they stand out visually before execution.
Users can now authenticate with providers using OAuth in addition to API keys. The TUI presents auth method options when connecting a provider, with support for both automatic and code-based OAuth flows that display authorization URLs with instructions.
When a user hasn't connected a provider yet, they can now see available providers with helpful footers (e.g. 'Recommended' for opencode) directly in the model selection dialog and connect them inline. After connecting, the TUI automatically refreshes available models without needing to navigate back to a separate connect flow.
- Show unconnected providers in the list so users can find and connect new services without leaving the workflow.
- Group recently used models at the top for faster access to common configurations.
- Add a 'Free' badge to opencode models to clearly identify no-cost options.
- Adjust dialog sizing to improve readability of the expanded model list.
- Expose all available providers and their default models to enable frontend discovery features.
- Return connection status per provider to allow clients to distinguish between active and potential integrations.
- Refined padding throughout the dialog select component for better visual hierarchy
- Changed selection indicator from bullet (●) to diamond (◆) for clearer visual distinction
- Adjusted message box structure for cleaner nesting of interactive elements
- Disabled AI SDK warning logs to reduce console noise during onboarding flow