Skip to content

Agentic Sidebar: Polish Site Rows, Chat Indicators, and Action Alignment#3894

Merged
shaunandrews merged 1 commit into
trunkfrom
improve-agentic-sidebar-polish
Jun 24, 2026
Merged

Agentic Sidebar: Polish Site Rows, Chat Indicators, and Action Alignment#3894
shaunandrews merged 1 commit into
trunkfrom
improve-agentic-sidebar-polish

Conversation

@shaunandrews

@shaunandrews shaunandrews commented Jun 18, 2026

Copy link
Copy Markdown
Contributor
Before After
image image
image

How AI was used in this PR

Used Codex to iteratively implement requested visual refinements to the new agentic sidebar and run verification after the changes.

Proposed Changes

Sidebar Header

  • Removed the "Studio" label; we don't need it, as the application menu and icon exist at the OS level.
  • Reducing the padding on the right to align actions with those below for sites and appearance. I also removed the dimming behavior, so the buttons are the same color as all the others.

Site List

  • Increased the row height to better fit the icon buttons and other indicators with equal spacing all around.
  • Site icons are now always visible and slightly bigger. The icons allow for customization and help with scanning long lists.
  • Site Icons now dim when the site is stopped.
  • Adjusted row spacing so site icons, chat status indicators, and action buttons align consistently. Running and pending chat indicators now use a smaller shared status slot, with the pending state shown as a compact triangle indicator with improved light/dark contrast.
  • Tightened chat status indicators so they feel less visually heavy next to site icons and chat titles.
  • Reduced font-weight for chat titles.

Sidebar Footer

  • Adjusted the spacing to align the Gravatar with the site icons.

Testing Instructions

  • Run npm run typecheck.
  • Run npm test -- apps/ui/src.
  • In the new agentic UI sidebar, verify site icons appear for all sites, stopped sites render grayscale, site/chat/user text columns align, top action buttons align with site row actions, and pending/running chat indicators have comfortable spacing.
  • Check the sidebar in both light and dark color schemes.

Pre-merge Checklist

  • Have you checked for TypeScript, React or other console errors?

@shaunandrews shaunandrews force-pushed the improve-agentic-sidebar-polish branch 2 times, most recently from 56f1e40 to 520c63a Compare June 19, 2026 18:28
@shaunandrews shaunandrews changed the title Polish agentic sidebar visuals Agentic Sidebar: Always Show Site Icon, Dim Stopped Site Icons, Reduce Font-Weight, and Align Actions Jun 19, 2026
@shaunandrews shaunandrews marked this pull request as ready for review June 19, 2026 18:59
@wpmobilebot

wpmobilebot commented Jun 19, 2026

Copy link
Copy Markdown
Collaborator

📊 Performance Test Results

Comparing dbb591d vs trunk

app-size

Metric trunk dbb591d Diff Change
App Size (Mac) 2344.38 MB 2344.38 MB +0.00 MB ⚪ 0.0%

site-editor

Metric trunk dbb591d Diff Change
load 728 ms 1102 ms +374 ms 🔴 51.4%

site-startup

Metric trunk dbb591d Diff Change
siteCreation 6502 ms 6517 ms +15 ms ⚪ 0.0%
siteStartup 6567 ms 6567 ms 0 ms ⚪ 0.0%

Results are median values from multiple test runs.

Legend: 🟢 Improvement (faster) | 🔴 Regression (slower) | ⚪ No change (<50ms diff)

@shaunandrews shaunandrews requested review from a team and bcotrim June 22, 2026 22:08

@bcotrim bcotrim left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed locally on the branch — really nice polish 👏 The alignment system holds up: site icons + footer gravatar share the leading column, and site titles + chat labels + display name land on the next.

Ran it: eslint ✅, typecheck ✅, site-list test ✅ (2/2), vite build ✅. Dark mode looks great.

RTL doesn't mirror — but this is a pre-existing apps/ui gap, not this PR. apps/ui loads translations (setLocaleData in main.tsx) yet never sets document.documentElement.dir, the way apps/studio does in use-localization-support.ts. So strings localize but the layout stays LTR. This PR is actually RTL-ready (logical properties throughout — the only physical bit is the macOS traffic-light padding, which should stay physical). Worth a separate issue to wire dir=rtl across apps/ui; shouldn't block here.

Left a few inline notes — one cleanup plus a couple of NITs/confirmations. Nothing blocking.

⚠️ Visual change: still needs a light-mode pass (dark ✅ confirmed).

Comment thread apps/ui/src/components/site-list/style.module.css
Comment thread apps/ui/src/components/site-list/style.module.css
Comment thread apps/ui/src/components/site-list/style.module.css
@@ -16,7 +16,6 @@ export function SidebarHeader( { onToggleSidebar }: Props ) {
const navigate = useNavigate();
return (
<div className={ `${ styles.root } ${ isFullscreen ? styles.fullscreen : '' }` }>

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Confirming intent: the header no longer renders the 'Studio' title, so the app name does not appear in the sidebar anymore — just the create/hide buttons now. 👍 if deliberate (it is not called out in the PR description, so flagging).

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I actually quite liked having the title there but that might be a personal preference

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yup, this was an intentional design decision to remove the Studio title. Its not very common to see apps that have this on macOS, as the app's name appears in the Dock and the Menubar. Windows and Linux both show a title bar, which includes the "Studio" label.

.actions {
display: flex;
align-items: center;
margin-inline-start: auto;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

NIT: along with the alignment change, the action buttons lost their resting opacity: 0.65 (and hover/focus → 1) and are now always full opacity. Assuming that's intended alongside 'Align Actions' — just confirming the dimming was dropped on purpose.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also intentional. With the opacity, the top action buttons were lighter than all the other actions in the sidebar. Removing the opacity makes all actions the same color.

Comment thread apps/ui/src/components/site-list/style.module.css Outdated
@shaunandrews shaunandrews changed the title Agentic Sidebar: Always Show Site Icon, Dim Stopped Site Icons, Reduce Font-Weight, and Align Actions Agentic Sidebar: Polish Site Rows, Chat Indicators, and Action Alignment Jun 23, 2026
@shaunandrews shaunandrews force-pushed the improve-agentic-sidebar-polish branch from 2b4709b to dbb591d Compare June 23, 2026 17:01
@shaunandrews shaunandrews requested review from a team, bcotrim and katinthehatsite June 23, 2026 17:03

@bcotrim bcotrim left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 👍

@katinthehatsite katinthehatsite left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The changes look good 👍

@shaunandrews shaunandrews merged commit 8d966e1 into trunk Jun 24, 2026
11 checks passed
@shaunandrews shaunandrews deleted the improve-agentic-sidebar-polish branch June 24, 2026 12:47
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.

4 participants