Model Selector

A composer-ready model and reasoning-effort control: the first view manages effort, the current model opens a full picker, and both views share a stable collision-aware panel with complete pointer and keyboard navigation.

Preview

Review this interface and make the interaction feel production-ready.

Install

Add it with the shadcn CLI, or copy the source manually.

$ bunx --bun shadcn add https://www.agentui.pro/r/model-selector.json

API Reference

models
readonly ModelSelectorOption[]
—
value?
string
—
defaultValue?
string
—
onValueChange?
((value: string) => void)
—
efforts?
readonly ModelSelectorEffortOption[]
[ { value: "low", label: "Low" }, { value: "medium", label: "Medium" }, { value: "high", label: "High" }, { value: "xhigh", label: "X-high" }, { value: "max", label: "Max" }, { value: "ultra", label: "Ultra" }, ]
effort?
string
—
defaultEffort?
string
high
onEffortChange?
((effort: string) => void)
—
open?
boolean
—
defaultOpen?
boolean
false
onOpenChange?
((open: boolean) => void)
—
disabled?
boolean
false
placeholder?
ReactNode
Select model
label?
string

Accessible name for the trigger and effort panel.

Model and effort
modelListLabel?
string
Select model
effortLabel?
string
Reasoning effort
side?
"top" | "bottom"
top
align?
"start" | "end"
end
sideOffset?
number
8
className?
string
—
triggerClassName?
string
—
contentClassName?
string
—

Updated

AgentUI

Your brand here

One featured spot across the component docs.

$200/ month

Become a sponsor