Skip to content

web-ui: chat rows, session header and empty state - #1055

Open
time-attack wants to merge 1 commit into
bui/02-thinking-tracefrom
bui/03-chat-rows-header
Open

web-ui: chat rows, session header and empty state#1055
time-attack wants to merge 1 commit into
bui/02-thinking-tracefrom
bui/03-chat-rows-header

Conversation

@time-attack

@time-attack time-attack commented Sep 10, 2026

Copy link
Copy Markdown
Collaborator

Summary

User messages become the reference bubble on the field colour, assistant text
takes the 14 px / 1.55 body voice, the message footer is a 24 px action lane, and
the streaming tail fades words in without blur. The session header is a tab
strip — crumb as a ghost tab, title as the active pill, six 28 px tool buttons
with count badges — and the empty chat shows the 21 px headline. Read-only and
shared transcripts share the same bar.

Demo

Scrolling a conversation: the user bubble, assistant typography, the hover action lane, then the tab-strip header and the empty-state headline.

04-chat-rows.gif

Verification

Typecheck, the full plugins/web-ui suite, eslint and prettier pass at this level of the stack (each level is verified on its own, on top of the previous one). Live QA of the finished stack ran in a browser-only dev-instance against a seeded conversation (tool run, markdown table, TypeScript and diff fences, a pending approval, ⌘K, list pages, settings), in light and dark and at phone width.

Stack

Merge in order; each PR is based on the one above it and retargets automatically when its base merges.

# PR Change
1 #1053 Beautiful UI foundation — tokens, fonts, styles scaffold
2 #1054 loading state and the live thinking trace
3 #1055 (this) chat rows, session header and empty state
4 #1056 approval card with a pager
5 #1057 tool chips and code blocks
6 #1058 records tables and filter lists
7 #1059 search palette
8 #1060 settings as inspector cards
9 #1061 selection actions toolbar
10 #1062 recommendation card

User messages become the reference bubble on the field colour, assistant text
takes the 14 px / 1.55 body voice, the message footer is a 24 px action lane, and
the streaming tail fades words in without blur. The session header is a tab
strip — crumb as a ghost tab, title as the active pill, six 28 px tool buttons
with count badges — and the empty chat shows the 21 px headline. Read-only and
shared transcripts share the same bar.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant