Summarize the rollout and keep the supporting evidence visible.
Sent
Customize selected message parts while preserving the default headless message structure.
This demo focuses on the common customization case where the message row layout is correct, but one or two part types need a different presentation.
That is often the most efficient customization point in AI chat products: preserve the shipped row structure and only replace the specific content shapes that need branded or domain-specific treatment.
Message.ContentgetDefaultMessagePartRenderer()Message.Content as the structural message-content surfacegetDefaultMessagePartRenderer() to preserve shipped rendering behaviorreasoning, tool, file, or data-*Use this pattern when:
This is especially useful for reasoning disclosures, tool outputs, citations, files, and data-* parts that need richer domain UI than the defaults provide.
getDefaultMessagePartRenderer() is the key tool for progressive customization.