Composer
The composer is where the user writes. Its input lists the open page’s actions and fields when the user types /.

Composer with no children renders its default. With children, it renders those. This one keeps the input, the model picker and the send button:
<AssistedPanel.Composer> <AssistedPanel.Input /> <AssistedPanel.ModelSelector /> <AssistedPanel.Send /></AssistedPanel.Composer>What the model sees
Section titled “What the model sees”What the user sends. ModelSelector also sets the model and the reasoning effort every message carries, as config.modelName and config.reasoningEffort. Super Assist answers an end user on the agent’s own model and thinking level, so the choice doesn’t change the reply. See How a turn is answered.
| Part | Kind | Renders |
|---|---|---|
AssistedPanel.Composer |
Container | The composer’s box below the conversation, centered up to 44 rem. Files dropped on it attach. |
AssistedPanel.Attachments |
Leaf | The files attached to the message, on a row of their own. |
AssistedPanel.Input |
Leaf | The text box. Enter sends. / opens the page’s slash commands. |
AssistedPanel.AddAttachment |
Leaf | A paperclip button that picks files. |
AssistedPanel.Dictate |
Leaf | A microphone button, then a stop button while dictating. Nothing when the runtime has no dictation. |
AssistedPanel.ModelSelector |
Leaf | A model picker, with an effort control for models that have efforts. Nothing without models. |
AssistedPanel.Send |
Leaf | Sends the message. While a reply runs, a stop button in its place. |
Default composition
Section titled “Default composition”Composer with no children renders Attachments and Input on rows of their own, then a row of controls: AddAttachment, Dictate and ContextDisplay on the left, ModelSelector and Send on the right.
Slash commands
Section titled “Slash commands”Typing / in Input lists the open page’s actions, then its fields. Rows of one action list each row’s label.
| Picked | Inserts | Hint |
|---|---|---|
| An action | Its label | “Rings it for you to press” when consequential, “Asks you before it runs” when "confirm". |
| A field | Set <label> to |
“Rings it for you to fill” when consequential. |
With nothing lent, the list reads “This page lends no actions or fields”. The placeholder reads “Ask, or type / for actions” while the page lends any, else “Send a message…”.
| Part | Props |
|---|---|
Composer |
className, children |
Input |
className, autoFocus (on by default), placeholder |
Attachments |
className |
AddAttachment, Dictate, Send |
A button’s props and asChild |
ModelSelector |
models, else the root’s models. searchable, align, variant, size, className, contentClassName. |
With asChild, Send replaces only the send button and Dictate only the start button. The stop and cancel buttons stay the package’s.
See also
Section titled “See also”- How a turn is answered, for what reaches the agent.
- Add actions and Lend a form’s fields for what the slash commands list.