> ## Documentation Index
> Fetch the complete documentation index at: https://smithers.sh/llms.txt
> Use this file to discover all available pages before exploring further.

# MessageResponse

> Render assistant Markdown safely while content is still streaming.

`MessageResponse` (`smithers-orchestrator/ui`) renders assistant Markdown via
the dependency-free `Markdown` primitive, keeping incomplete fences and
inline markers stable across stream chunks, and shows an `aria-hidden` caret
while `streaming` is true.

```tsx theme={"theme":{"light":"github-light","dark":"github-dark"}}
import { MessageResponse } from "smithers-orchestrator/ui";

<MessageResponse
  content={assistantText}
  streaming={isStreaming}
  onLinkClick={(href) => navigate(href)}
/>
```

`onLinkClick` receives only sanitized `http`, `https`, `mailto`, or
scheme-less hrefs, once default navigation is prevented; other schemes never
reach it. The caret stops blinking under reduced-motion preferences.

## Props

| Prop             | Type                          | Default  | Description                                             |
| ---------------- | ----------------------------- | -------- | ------------------------------------------------------- |
| `content`        | `string`                      | required | Markdown source, including incomplete streaming chunks. |
| `streaming`      | `boolean`                     | `false`  | Shows the subtle streaming caret.                       |
| `onLinkClick`    | `MarkdownLinkClick`           | none     | Handles sanitized link navigation.                      |
| native div props | `React.ComponentProps<"div">` | none     | Applied to the response root, except `children`.        |
