전체 카탈로그
ChatChat0 props

Chat

Chat is a family of composable primitives for building AI and human chat experiences. Combine ChatLayout, ChatMessageList, ChatMessage, bubbles, system messages, tool calls, tok...

공식 문서 열기
live previewChat

Preview

Can you compare @Button and @Link, then show what to use on #docs-route?
Astryx AI
I checked @Button, @Link, and #docs-route. Use Button for commands that mutate state, and Link for navigation to another route.
3 tool calls
readDocsdocsButton, Link420ms
scanPreviewbrowser/components/button+21.1s
draftAnswerassistantusage guidance
3Context
@Button@Link#docs-route
RAG ready12k context
streaming

Import

import {Chat} from '@astryxdesign/core/Chat';

Astryx 문서 권장 방식대로 root barrel이 아니라 컴포넌트 subpath에서 가져옵니다.

When to use

Chat is a family of composable primitives for building AI and human chat experiences. Combine ChatLayout, ChatMessageList, ChatMessage, bubbles, system messages, tool calls, tok...

chatmessagebubbleconversationaiassistantthreadsystem-message

Important props

이 컴포넌트는 주요 variant prop보다 children/compound pattern 중심으로 사용합니다.

Theming targets

astryx-chat-layoutastryx-chat-composerastryx-chat-composer-inputastryx-chat-composer-drawerastryx-chat-messageastryx-chat-message-bubbleastryx-chat-message-listastryx-chat-system-messageastryx-chat-message-metadataastryx-chat-send-buttonastryx-chat-tokenized-textastryx-chat-tool-callsastryx-trigger-menu

Best practices

  • DoCompose messages using MessageList > Message > Bubble for consistent sender-aware styling and density.
  • DoSet the density prop to control spacing globally: compact for sidebars, balanced for most views, spacious for long-form reading. Individual messages can override.
  • DoUse gap when top-level rows are independent (for example, LLM tool events or streamed blocks) and list spacing needs to be tuned separately from density.
  • DoUse the group prop on bubbles (first, middle, last) when a single sender sends multiple consecutive messages; it tightens corner radius to visually connect them.