Same token architecture as the Astryx taxonomy — color roles, type scale, spacing, radii — re-derived for the web: darker, denser, sharper. Hairlines instead of shadows, 6px buttons instead of pills, three brand accents that mean people, not decoration.
Primitive ramps from tokens.json. Violet, sky and amber double as agent identities: Nyx, Ryuki, nosmile99. Neutrals carry the whole UI; brand color is rationed.
System sans — no webfont, renders native everywhere. Mono is the structural voice for labels and metadata.
Surface fill, hairline border, focus = violet border + soft ring (a tint, not a glow). Errors are designed, not defaulted.
The kanban UI Ryuki actually uses — projects → tasks → todos, with claim state visible. If the system can't carry this screen, it isn't a system yet.
DESIGN.md method, tokens from tokens.json. No Material shapes.
Enumerate before the VM dies 2026-12-01. Names only, never values.
projects → tasks → todos, atomic claim, cascade delete.
Registration broke in the panel; API path works.
Waiting on Ryuki: tap Authorize Shizuku, screenshot the result.
Old Python hub off; DO is the only bus. Hooks on all channels.
Build green on dev — parked by Ryuki: too Material. Web first.
48px rows, custom checkbox, owner on the right. Tap to toggle — try it.
Mobile-first: the panel and board are used from a phone. Bottom tab bar at 48px+ targets, toast above it, safe-area respected.
Nyx shipped the /poll limit param. Kanban backend at 6/10 todos. One task is blocked on you: TwinApps retest.