You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Bring the Desktop shell chrome and the settings pages onto the Astryx idiom and the DESIGN.md contract, so that every visible surface reads as one system: one surface ladder, one border means, one radius ladder, two ink tiers, and Astryx primitives at the seam.
This tracker owns the visual and structural work. Behavioural bugs and renderer performance are tracked separately in #4677; WorkHub lives in #3492.
Titlebar geometry and identity: one height on the 4px rhythm, session identity from titlebar-session-identity.tsx as the only title authority, chrome actions as Astryx Button/Toolbar, no product shadow.
Titlebar dim and modal sync (titlebar-dim-color.ts, titlebar-modal-sync.ts) read colour from the painted root per DESIGN.md §8, never from a token string.
Settings (13 pages, in groups of 2–3 per PR, following #4571)
General, Appearance, Data
Memory, Projects, Subagents
Providers overview and connection detail (keep the multi-level IA; fix C1–C4 inside it)
Bots overview, detail, onboarding modal
Usage, Web search, Health, Permission, Daily review
Rules for every page: open groups with Heading + Divider (no stacked cards, C1), no nested containers (C2), no decorative Badge (C3), one primary action per view (C4), no accent as texture (C5), unified row grammar (C7), no dashboard stat tiles (C8).
Cross-cutting
CSS dialect: move remaining surface rules out of maka-tokens.css and reference-shell.css into styles/** per docs/frontend-css-governance.md; freeze new agents-* class names (P3.3).
Shrink quote-chip, turn-footer and lineage Button overrides to themeProps (P3.1).
Goal
Bring the Desktop shell chrome and the settings pages onto the Astryx idiom and the
DESIGN.mdcontract, so that every visible surface reads as one system: one surface ladder, one border means, one radius ladder, two ink tiers, and Astryx primitives at the seam.This tracker owns the visual and structural work. Behavioural bugs and renderer performance are tracked separately in #4677; WorkHub lives in #3492.
Baseline and predecessors
Heading+Divideropen groups, no stacked cards, no nested containers).docs/settings-astryx-deep-review.zh-CN.md(C1–C10) records the gap; About was rebuilt on the template in refactor(desktop): rebuild the About page as labeled settings groups #4571 and is the reference; 13 pages remain.docs/frontend-architecture-astryx-review-2026-08-09.md: raw-control blockers 0; remaining risk is AppShell concentration (A1–A3), CSS dialect sprawl (A7), and product chrome over Astryx controls (P3.1).Work items
Each item is one PR with BEFORE/AFTER Storybook captures (light and dark, same stories, same viewport) in the PR body.
Titlebar
mainsince 08-27) before touching titlebar geometry.titlebar-session-identity.tsxas the only title authority, chrome actions as AstryxButton/Toolbar, no product shadow.titlebar-dim-color.ts,titlebar-modal-sync.ts) read colour from the painted root per DESIGN.md §8, never from a token string.Workbar (right side)
Session rail (left sidebar)
List/Itemidiom: 32–36px rows, dividers instead of cards, status viaStatusDot(no decorativeBadge).Tooltip/Dialog/DropdownMenuwith the Floating Recipe (DESIGN.md §5).Settings (13 pages, in groups of 2–3 per PR, following #4571)
Heading+Divider(no stacked cards, C1), no nested containers (C2), no decorative Badge (C3), one primary action per view (C4), no accent as texture (C5), unified row grammar (C7), no dashboard stat tiles (C8).Cross-cutting
maka-tokens.cssandreference-shell.cssintostyles/**perdocs/frontend-css-governance.md; freeze newagents-*class names (P3.3).Buttonoverrides tothemeProps(P3.1).app-shell.tsx).apps/desktop/AGENTS.md,packages/ui/AGENTS.md) and thexds+ Storybook MCP entries — pending Discussion [DISCUSS] What should the repository tell coding agents, and where? #4676, together with docs: add AGENTS.md #3576 and Adopt Storybook's official MCP addon to give agents a queryable component interface #3527.Non-goals
Verification
apps/desktop/e2ewhere behaviour exists.