Skip to content
VerticalCopilot desk

An agent session that shows its work

A message list that announces arrivals, an answer that streams with a caret, tool calls with their durations and outputs, agent steps that move from running to done, and a composer that swaps send for stop.

Built from
MessageListChatMessageStreamingTextToolCallTimelineAgentActivityPromptComposerNativeSelect
What the browser test drives
Ask about volatility, watch the answer stream while the tool timeline appears, press Stop mid-stream, then ask the drawdown question and get the prepared fallback when the question is off-script.
Appearance
Cobalt with the technical mono face — the type voice that says “this output is literal”.
Preview

Copilot desk

A research assistant that shows the calls behind every number.

Idle

Retrieving the series before answering

212 ms

  1. Resolve the instrumentBTCUSD from the workspace default watchlist.
  2. Fetch the volatility windowTwenty and sixty sessions, daily close.
  3. Write the answerOnly the numbers the two calls returned.

You

09:41

How is realised volatility versus its sixty-session median?

Answers in this demo are prepared, not generated.
Nothing here contacts a model. The library never has and never will.

Provider-neutral primitives: a message list that announces arrivals politely, a streamed answer with a caret, tool calls with durations, and a composer that swaps send for stop while a response is in flight.

Interactive, not live: every action below changes local state in this page. No network request is made, no market data is fetched and no message is sent anywhere.

Luc UI v1.0AI workspacedark theme