# Prompt Input

> Auto-growing composer with tools, model picker slot, and send/stop.

Registry name: `prompt-input`. HTML docs: https://ui.anuragroy.dev/component/prompt-input.

## Install

```bash
npx shadcn@latest add https://ui.anuragroy.dev/r/prompt-input.json
```

If the website is down: `npx shadcn@latest add https://raw.githubusercontent.com/anurag-roy/ui.anuragroy.dev/main/public/r/prompt-input.json`.

Registry JSON: https://ui.anuragroy.dev/r/prompt-input.json (GitHub: https://raw.githubusercontent.com/anurag-roy/ui.anuragroy.dev/main/public/r/prompt-input.json).

## Import

Import paths follow the consumer `components.json` aliases. After a default install:

```tsx
import {
  PromptInput,
  PromptInputBody,
  PromptInputSubmit,
  PromptInputTextarea,
  PromptInputToolbar,
  PromptInputTools
} from "@/components/ui/prompt-input"
```

## Usage

```tsx
import {
  PromptInput,
  PromptInputBody,
  PromptInputSubmit,
  PromptInputTextarea,
  PromptInputToolbar,
  PromptInputTools,
} from "@/components/ui/prompt-input"

export function Example() {
  return (
    <PromptInput
      onSubmit={(event) => {
        event.preventDefault()
      }}
    >
      <PromptInputBody>
        <PromptInputTextarea placeholder="Ask the agent…" />
      </PromptInputBody>
      <PromptInputToolbar>
        <PromptInputTools />
        <PromptInputSubmit />
      </PromptInputToolbar>
    </PromptInput>
  )
}
```

## API

### PromptInput

A `form`. Enter submits; Shift+Enter inserts a newline.

| Prop | Type | Default | Description |
| --- | --- | --- | --- |
| `status` | "idle" \| "submitted" \| "streaming" | "idle" | When `streaming`, the submit control becomes stop. |
| `onStop` | () => void | — |  |

## See also

- [HTML page](https://ui.anuragroy.dev/component/prompt-input): Preview and the same docs in the site chrome.
- [Registry item](https://ui.anuragroy.dev/r/prompt-input.json): Source files and dependencies.
- [Catalog](https://ui.anuragroy.dev/component): All components.
- [llms.txt](https://ui.anuragroy.dev/llms.txt): Agent index for this library.
