Back

Conversational Canvas

The core experience of CruxMD. A single scrollable conversation where the LLM decides what to show — narrative, insights, data, and follow-ups — and the UI renders it progressively.

Full Conversation

A complete clinical workflow showing the heart failure progression detection scenario. The agent synthesizes scattered data — trending biomarkers, weight changes, escalating medications, and buried symptoms — to identify early-stage heart failure that no single data point would flag alone.

Margaret Chen

Margaret Chen, 68F

Silent Progression

Margaret Chen, 68F — HTN, T2DM, obesity. On your schedule this afternoon. Her furosemide has been uptitrated twice in 4 months (20 → 30 → 40 mg). Escalating diuretic requirement may indicate worsening fluid retention.

What's driving the diuretic escalation? Pull her recent trends.

**Active

Pull her weight trend alongside the BNP — I want to see if the diuretic escalation correlates with fluid retention.

Two

I'm thinking GDMT — walk me through initiation given her current regimen and the contraindication landscape.

Here's

Triage Message

The AI initiates the conversation with a contextual seeding message. This provides relevant patient context and highlights the reason for the interaction — setting up the clinical question before the user asks anything.

Margaret Chen, 68F — HTN, T2DM, obesity. On your schedule this afternoon. Her furosemide has been uptitrated twice in 4 months (20 → 30 → 40 mg). Escalating diuretic requirement may indicate worsening fluid retention.

Design Notes:

  • Renders with typewriter animation at AI streaming speed
  • Left-aligned, plain text — no bubble styling
  • Patient name bolded, key clinical flags highlighted
  • Appears before user interaction begins

Action Buttons

After the agent provides recommendations, action buttons allow one-click execution. Actions can be orders (prescriptions, labs), referrals, documentation, or alerts. Selected actions show a checkmark and primary color styling.

Take action
order
Medications, labs, imaging
refer
Specialist referrals
document
Notes, letters, forms
heart
Custom icon override

Epilogue & Task Completion

After actions are selected, the epilogue shows completion states. Different action types have different completion behaviors: instant (immediate), agent tasks (async with spinner), and human-queued (deferred for manual handling).

  • Carvedilol 3.125 mg BID prescribed — sent to CVS Pharmacy
  • Lisinopril uptitrated to 20 mg — patient notified via portal
  • Coordinating with cardiology...
  • Follow-up appointment and echocardiogram queued for discussion and scheduling during today's visit
instant
Completes immediately. Shows checkmark. Used for simple orders.
agent_task
Agent works asynchronously. Shows spinner, then checkmark when done.
human_queued
Deferred to human. Shows user icon. Requires manual action.

Memory Nudge

After completing actions, the agent shows what it learned from the interaction. This builds trust by making the learning loop transparent.

Learned: your diagnosis and treatment preferences for heart failure.

Input Toolbar

The ChatInput component combines a resizable textarea with model selection, reasoning toggle, attachment button, and send action.

Plus button
Add files, connectors, and attachments
Clock icon
Toggle extended thinking (reasoning effort)
Model selector
Switch between GPT-5, GPT-5 mini, GPT-5 nano
Send button
Submit message (disabled when empty or loading)

Component Breakdown

Individual subcomponents that compose the conversational canvas.

UserMessage

Right-aligned bubble with muted background. In the demo, user messages have a typewriter effect with a pulsing microphone icon to simulate voice input.

What's driving the diuretic escalation? Pull her recent trends.

AgentMessage

Full-width response containing reasoning toggle, markdown narrative, insight cards, message actions (copy, feedback, retry), and follow-up suggestions.

Two

ThinkingIndicator

Shown while the agent is streaming a response. Displays a Lottie spinner alongside the latest reasoning headline or a rotating thinking verb.

Reviewing medication history

InsightCard

Collapsible severity cards with left accent bar. Four types: critical (red), warning (amber), info (blue), and positive (green). Click title or chevron to expand. Citations show the source documents that support the finding.

FollowUpSuggestions

Ghost buttons with chevron icons that continue the conversation. Clicking a suggestion sends it as the next user message.

MessageActions

Inline action bar below each agent message: copy to clipboard, thumbs up/down feedback, and retry. Rendered as part of AgentMessage — shown in context above.

Design Principles

LLM-first

The agent decides what content to show — narrative, insights, tables, charts. The UI renders whatever the LLM returns, not predefined screens.

Progressive Disclosure

Reasoning is collapsed behind a toggle. Insight cards start collapsed. Details emerge on demand, keeping the default view clean.

Streaming-native

Responses stream in real-time: thinking indicator with reasoning headlines, typewriter narrative reveal, staggered insight card animation.

Conversational Flow

Follow-up suggestions keep the dialogue going. Each answer seeds the next question, enabling emergent navigation through patient data.