@redrob-labs/ui v1.0.2 · Redrob Group Design System 2026

Message

Agent chat · src/components/Message/Message.tsx

One turn in a conversation.

The author is a real element rather than a colour or an alignment, so who said what survives for a reader who cannot see the layout. Alignment alone is how a transcript becomes unattributable.

Everything known about an answer goes in footer - the receipt, the citations, the confidence. It sits after the content because a reader wants the answer first and the provenance second.

Import

import { Message } from '@redrob-labs/ui';

Rendered

The design system's own preview case, run against this package's build. The parity gate compares this rendering to the reference bundle's.

Props

PropTypeNotes
role 'user' | 'assistant' | 'system'
author string Who said it. Defaults to "You" or "Redrob" by role.
mark React.ReactNode Overrides the derived initials in the corner mark.
footer React.ReactNode Receipts, citations, confidence - what is known about this answer.
className string
children React.ReactNode