Skip to main content

ChatFloatingProps

Agent Runtimes


Agent Runtimes / chat/ChatFloating / ChatFloatingProps

Interface: ChatFloatingProps

Defined in: chat/ChatFloating.tsx:56

ChatFloating props

Properties

animationDuration?

optional animationDuration?: number

Defined in: chat/ChatFloating.tsx:170

Animation duration (in ms)


authToken?

optional authToken?: string

Defined in: chat/ChatFloating.tsx:277

Auth token for authenticating with the agent runtime. Used for indicator API calls (MCP status, sandbox status) and history.


availableModels?

optional availableModels?: ModelConfig[]

Defined in: chat/ChatFloating.tsx:235

Override the list of available models. When provided, this list replaces the models returned by the config endpoint. Use this to restrict the model selector to a specific subset of models.


brandColor?

optional brandColor?: string

Defined in: chat/ChatFloating.tsx:164

Brand color override. Defaults to the theme's accent.emphasis token.


brandIcon?

optional brandIcon?: ReactNode

Defined in: chat/ChatFloating.tsx:155

Custom brand icon


buttonIcon?

optional buttonIcon?: ReactNode

Defined in: chat/ChatFloating.tsx:158

Custom button icon when closed


buttonTooltip?

optional buttonTooltip?: string

Defined in: chat/ChatFloating.tsx:161

Button tooltip text


children?

optional children?: ReactNode

Defined in: chat/ChatFloating.tsx:152

Children to render in popup body (custom content)


className?

optional className?: string

Defined in: chat/ChatFloating.tsx:134

Custom class name


clickOutsideToClose?

optional clickOutsideToClose?: boolean

Defined in: chat/ChatFloating.tsx:128

Enable click outside to close

Default

false

defaultOpen?

optional defaultOpen?: boolean

Defined in: chat/ChatFloating.tsx:90

Default open state


defaultViewMode?

optional defaultViewMode?: "panel" | "floating" | "floating-small"

Defined in: chat/ChatFloating.tsx:213

Default view mode.

  • 'floating': Full-height floating panel (pinned to right edge with offset)
  • 'floating-small': Standard floating popup
  • 'panel': Full-height side panel (right edge, no floating offset)

Default

'floating'

description?

optional description?: string

Defined in: chat/ChatFloating.tsx:84

Description shown in empty state


enableKeyboardShortcuts?

optional enableKeyboardShortcuts?: boolean

Defined in: chat/ChatFloating.tsx:114

Enable keyboard shortcuts


endpoint?

optional endpoint?: string

Defined in: chat/ChatFloating.tsx:61

AG-UI endpoint URL (e.g., http://localhost:8000/api/v1/examples/agentic_chat). When provided with useStore=false, enables AG-UI protocol mode.


escapeToClose?

optional escapeToClose?: boolean

Defined in: chat/ChatFloating.tsx:131

Enable escape key to close


frontendTools?

optional frontendTools?: FrontendToolDefinition<Record<string, unknown>, unknown>[]

Defined in: chat/ChatFloating.tsx:183

Frontend tool definitions to register with the chat. Consistent with Chat and ChatBase.


height?

optional height?: string | number

Defined in: chat/ChatFloating.tsx:96

height


hideMessagesAfterToolUI?

optional hideMessagesAfterToolUI?: boolean

Defined in: chat/ChatFloating.tsx:204

Whether to hide assistant messages that follow a rendered tool call UI.

Default

false

historyAuthToken?

optional historyAuthToken?: string

Defined in: chat/ChatFloating.tsx:282

Auth token for the history endpoint.


historyEndpoint?

optional historyEndpoint?: string

Defined in: chat/ChatFloating.tsx:271

Endpoint URL for fetching conversation history. Defaults to {protocol.endpoint}/api/v1/history when runtimeId is set.


initialState?

optional initialState?: Record<string, unknown>

Defined in: chat/ChatFloating.tsx:186

Initial state (for shared state example)


offset?

optional offset?: number

Defined in: chat/ChatFloating.tsx:167

Offset from edge (in pixels)


onClose?

optional onClose?: () => void

Defined in: chat/ChatFloating.tsx:146

Callback when popup closes

Returns

void


onInformationClick?

optional onInformationClick?: () => void

Defined in: chat/ChatFloating.tsx:298

Callback when the information icon is clicked

Returns

void


onNewChat?

optional onNewChat?: () => void

Defined in: chat/ChatFloating.tsx:140

Callback when new chat clicked

Returns

void


onOpen?

optional onOpen?: () => void

Defined in: chat/ChatFloating.tsx:143

Callback when popup opens

Returns

void


onSettingsClick?

optional onSettingsClick?: () => void

Defined in: chat/ChatFloating.tsx:137

Callback when settings clicked

Returns

void


onStateUpdate?

optional onStateUpdate?: (state) => void

Defined in: chat/ChatFloating.tsx:149

Callback for state updates (for shared state example)

Parameters

state

unknown

Returns

void


onViewModeChange?

optional onViewModeChange?: (mode) => void

Defined in: chat/ChatFloating.tsx:221

Callback when the user switches view mode via the header toggle. The parent component receives the new ChatViewMode value. When the user selects 'sidebar', the parent should switch to rendering a ChatSidebar instead.

Parameters

mode

ChatViewMode

Returns

void


panelProps?

optional panelProps?: Partial<ChatBaseProps>

Defined in: chat/ChatFloating.tsx:301

Additional ChatBase props


pendingPrompt?

optional pendingPrompt?: string

Defined in: chat/ChatFloating.tsx:288

A prompt to append and send after the conversation history is loaded. The message is shown in the chat and sent to the agent exactly once.


position?

optional position?: "bottom-right" | "bottom-left" | "top-right" | "top-left"

Defined in: chat/ChatFloating.tsx:87

Position of the popup


poweredByProps?

optional poweredByProps?: Partial<PoweredByTagProps>

Defined in: chat/ChatFloating.tsx:123

Powered by tag props


protocol?

optional protocol?: Protocol | ProtocolConfig

Defined in: chat/ChatFloating.tsx:72

Protocol type or full configuration.

When a Protocol string is provided (e.g. 'vercel-ai'), it overrides the auto-detected protocol from the endpoint URL. When a full ProtocolConfig object is provided, it is used directly and takes precedence over endpoint.

Default

'vercel-ai'

renderToolResult?

optional renderToolResult?: RenderToolResult

Defined in: chat/ChatFloating.tsx:177

Custom render function for tool results. When provided, tool calls will be rendered inline in the chat using this function instead of being hidden.


runtimeId?

optional runtimeId?: string

Defined in: chat/ChatFloating.tsx:265

Runtime ID used to scope and persist conversation history. When provided, history is fetched on mount from the historyEndpoint.


showButton?

optional showButton?: boolean

Defined in: chat/ChatFloating.tsx:102

Show the floating button when closed


showClearButton?

optional showClearButton?: boolean

Defined in: chat/ChatFloating.tsx:108

Show clear button


showHeader?

optional showHeader?: boolean

Defined in: chat/ChatFloating.tsx:99

Show header


showInformation?

optional showInformation?: boolean

Defined in: chat/ChatFloating.tsx:295

Show the information icon in the header. When clicked, fires onInformationClick.

Default

false

showModelSelector?

optional showModelSelector?: boolean

Defined in: chat/ChatFloating.tsx:241

Show model selector in footer.

Default

false

showNewChatButton?

optional showNewChatButton?: boolean

Defined in: chat/ChatFloating.tsx:105

Show new chat button


showPanelBackdrop?

optional showPanelBackdrop?: boolean

Defined in: chat/ChatFloating.tsx:228

Show backdrop overlay in panel mode. When true, a semi-transparent overlay covers the page behind the panel.

Default

false

showPoweredBy?

optional showPoweredBy?: boolean

Defined in: chat/ChatFloating.tsx:120

Show powered by tag


showSettingsButton?

optional showSettingsButton?: boolean

Defined in: chat/ChatFloating.tsx:111

Show settings button


showSkillsMenu?

optional showSkillsMenu?: boolean

Defined in: chat/ChatFloating.tsx:253

Show skills menu in footer.

Default

false

showTokenUsage?

optional showTokenUsage?: boolean

Defined in: chat/ChatFloating.tsx:259

Show token usage bar between input and selectors.

Default

true

showToolsMenu?

optional showToolsMenu?: boolean

Defined in: chat/ChatFloating.tsx:247

Show tools menu in footer.

Default

false

submitOnSuggestionClick?

optional submitOnSuggestionClick?: boolean

Defined in: chat/ChatFloating.tsx:198

Whether to automatically submit the message when a suggestion is clicked.

Default

true

suggestions?

optional suggestions?: Suggestion[]

Defined in: chat/ChatFloating.tsx:192

Suggestions to show in empty state. When clicked, the suggestion message is populated in the input.


title?

optional title?: string

Defined in: chat/ChatFloating.tsx:81

title


toggleShortcut?

optional toggleShortcut?: string

Defined in: chat/ChatFloating.tsx:117

Toggle shortcut key


useStore?

optional useStore?: boolean

Defined in: chat/ChatFloating.tsx:78

Use Zustand store for state management instead of protocol endpoint.

Default

false

width?

optional width?: string | number

Defined in: chat/ChatFloating.tsx:93

width