Design systems for AI products
A normal design system assumes the interface is fixed: a button is always a button, in a known place, with known states. Once part of what's on screen is generated — a response, a summary, a dynamically-built card — some of that certainty goes away, and the system has to define what's allowed to vary and what isn't.
The place this shows up most on this actual site is the Living Journal cards: same shell, same pill styles, same spacing, every time — but the content inside is written fresh each round. That's a small, real example of a generated-content component sitting inside a fixed design system, and it's held up fine so far because the boundary between ‘fixed shell’ and ‘variable content’ was decided up front rather than discovered by accident.
Still early days on this one more broadly — the open question is what happens once the generated part starts wanting to break the shell's rules (a response that's naturally a list, in a system that doesn't want lists), and whether the answer is a stricter shell or a more flexible one.