Files
windmill/frontend
Guilhem LemouelandClaude Opus 5 c8350480df feat: render flow chat mode through the AI session chat components
Flow chat mode drew its own bubbles from chat/ChatMessage and chat/ChatInput
while the AI session chat rendered the same kinds of message far better a
directory away. FlowChatViewHost maps a flow run's conversation onto
ChatViewHost, so both now render through AIChatDisplay.

Flow chat gains thinking blocks, workspace-path links, collapsible tool cards,
the typing indicator, scroll-to-latest, and queueing a message typed while the
run is in flight. FlowChatManager keeps its conversations, SSE and polling
untouched; the sidebar, the inputs modal and its localStorage are unchanged.

An assistant message can carry the flow step that produced it, rendered only
when a conversation holds more than one distinct step — with a single agent the
label repeats on every message and says nothing. It is counted over the
transcript rather than the flow's current steps, since a conversation outlives
edits to the flow. AssistantMessage also renders a windmill_s3_object result
through DisplayResult, as chat/ChatMessage did.

FlowChatInterface claims a min-height once there are messages: the editor's
Test-flow panel stacks the chat above the job result in an auto-height column,
where the transcript's absolute scroller would otherwise resolve to zero.

chat/ChatMessage and chat/ChatInput stay for AppChat and its customCss hooks.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Hw1yzWHyqqZmQrviUEhr5b
2026-08-31 15:55:53 +02:00
..

Windmill frontend

The Windmill frontend written in Svelte 5 + Tailwind CSS

The frontend is under AGPL, see the LICENSE file at the root of this repo