Design Systems Now Have a Second Reader
For most of their history, design systems had one kind of reader: a person. People browse, ask a colleague, look at an old screen and infer what was meant. A lot of what made a system work was never written down.
On one product I work on, new screens now start as an AI agent’s draft, generated from the product requirements before a designer touches them. The agent doesn’t browse or ask. It reads what’s written and does exactly that.
If it isn’t written down, it doesn’t exist
Agents expose every gap in a system. A person who sees two similar greys asks which one to use; an agent picks one. So the first investment wasn’t the agent at all. It was the rules: a conventions file covering tokens, colour, layout and usage, kept in sync with its page in Figma.
Prompts improve the average. Checks make it reliable.
Better instructions made the output better on average, but not dependable. What made it dependable was a second step: a checker that compares every generated screen with the library and lists anything that didn’t come from it. In the first runs, the generated screens used zero tokens from outside the foundation library and zero raw values.
Identify things by key, not by name. The same style name existed in more than one library; matching by name quietly picked the wrong one.
A checker that cries wolf gets ignored. Our first QA pass said no screen passed. Every failure came from a hidden layer nobody could see. Fixing false alarms mattered more than catching one more real issue.
Test with an agent that knows nothing. If a fresh agent can’t follow the rules from the repository alone, the rules aren’t finished.
What changes for designers
The designer’s job moves from correcting colours and spacing to judging hierarchy, flow and edge cases. That’s a better use of a designer, but only if the system carries the boring decisions reliably.
What I’d tell a team starting out
Write the rules before you write the prompts.
Make every rule you can checkable by a script. Scripts don’t get tired.
Add a rule only after the agent makes the same mistake twice, and put it in the most specific place.
Measure the output. A good demo is not evidence.