Design Systems AI Agents Can Build With (2026 Guide)
The five layers that let Claude Code, Cursor and Codex build on your design system instead of guessing: tokens, components, rules, the Figma MCP server and a registry.
Shaheer Malik
Framer Designer & Developer
Quick answer
Write the system down where agents can read it: tokens in a machine-readable file with descriptions, components in code with typed props and the same names as Figma, usage rules in AGENTS.md or CLAUDE.md, and a live link to the design source through the Figma MCP server and Code Connect.
Last updated: 29 October 2026
An AI agent builds with a design system when the system is written down where the agent can read it: tokens in a machine-readable file, components in code with clear names and typed props, the usage rules in a file the agent loads every session, and a live connection to the design source. Agents fill every gap by guessing. An agent-ready design system is one that leaves them fewer gaps.
Coding agents such as Claude Code, Cursor and Codex write interface code from a prompt. Give one a screenshot and a vague prompt and it produces something plausible: a new button that is almost like your button, a hex value that is almost your brand blue, spacing that is almost on your scale. Each "almost" is small. Fifty of them are a product that no longer looks like one product.
The fix is not a better prompt. It is a design system built to be read by machines as well as people. This guide covers the five layers that matter, with the standards and tools behind each one checked on 29 October 2026.
The five layers at a glance
| Layer | What the agent needs | Where it lives |
|---|---|---|
| Tokens | Every colour, size, radius and duration as a named value with a purpose | A token file, ideally in the DTCG format, built into CSS variables |
| Components | One component per job, with typed props and the same names as the design file | Your codebase, in one folder the agent is told about |
| Rules | What to use, what never to do, and how to check the work | AGENTS.md or CLAUDE.md at the root of the repository |
| Design source | The frame, its variables and the code component behind each design component | The Figma MCP server, with Code Connect |
| Distribution | A way to find and install approved components instead of inventing new ones | A component registry the agent can search |
1. Tokens an agent can read
Design tokens turn design decisions into named values. For an agent, the name is the point: color.text.muted says where to use a value, while #6B7280 says nothing.
Tokens now have a standard. The Design Tokens Community Group, a W3C community group, published the first stable version of its format, 2025.10, on 28 October 2025. The essentials:
- A token is a JSON object, and
$valueis its only required property $typesays what the value is: color, dimension, font family, duration, shadow, typography and more$descriptionexplains the token's purpose in plain text, which is exactly what an agent needs- Aliases point one token at another with curly brackets, so
{color.brand.primary}can feed a button's background - The recommended file extensions are
.tokensand.tokens.json
A token written for agents as well as people looks like this:
{
"color": {
"text": {
"muted": {
"$type": "color",
"$value": "{color.gray.500}",
"$description": "Secondary text: captions, helper text, timestamps. Never for body copy or links."
}
}
}
}
The description does the work. It tells the agent when to use the token and, just as useful, when not to. The group's site lists Figma, Framer, Penpot, Sketch, Style Dictionary and Tokens Studio among the tools adopting or taking part in the format. If your tokens live in Figma variables today, how to set up design tokens in Figma covers the structure.
In code, build the token file into CSS variables or a Tailwind theme, and then make raw values the exception. An agent that sees var(--color-text-muted) used everywhere will copy the pattern. An agent that sees a mix of variables and hex codes will copy the mix.
2. Components with one name each
Agents reuse what they can find and understand. Three habits make a component library easy to reuse:
- One component per job. Two buttons that do the same thing in slightly different ways invite the agent to pick the wrong one. Merge them.
- Typed props with honest names.
variant="destructive"andsize="sm"describe themselves. A prop calledtype2does not. - The same names in design and code. If Figma calls it "Button / Secondary" and the code calls it
GhostButton, nobody, human or machine, can match them reliably.
Keep the components in one folder and say where it is in the rules file. Short comments on each component's purpose, and a story or example per variant, give an agent the same help they give a new developer.
3. Rules the agent reads every session
Every coding agent starts each session with a blank memory. A rules file in the repository is how a design system survives that.
- AGENTS.md is an open format, described by its maintainers as a README for agents, and its site says over 60,000 open source projects use it. It lists Codex, Jules, VS Code, Zed and Devin among the tools that read it.
- Claude Code reads a CLAUDE.md file at the project root, and its documentation says it can also read a repository's AGENTS.md. A CLAUDE.md can import other files with
@pathsyntax, so the design rules can live in their own file.
The design section of a rules file should be short, specific and checkable:
## Design system
- Components live in src/components/ui. Use them before writing new UI.
- Colours, spacing, radii and shadows come from tokens (CSS variables).
Never write a hex code, px spacing or a new shadow by hand.
- Buttons: one primary action per screen. Destructive actions use
variant="destructive" and ask for confirmation.
- Every list and table has an empty, loading and error state.
- Text contrast meets WCAG 2.1 AA (4.5:1 for body text).
- New component? Add it to src/components/ui with typed props,
then tell me what you added and why.
Rules work best when they can be checked. "Make it look nice" cannot. "No hex codes outside the token file" can, by the agent, by a reviewer, or by a lint rule.
4. A live line to the design source
The Figma MCP server uses the Model Context Protocol to give an agent the design context it needs, on Figma's Starter, Professional, Education, Organization, Government and Enterprise plans. Paste a link to a frame into a connected client and the agent can pull its layout, variables and components into code. Figma lists Claude Code, Cursor, Codex, VS Code and others among the supported clients, and recommends its remote server, hosted by Figma, for most users.
Two parts make this a design system tool rather than a screenshot tool:
- Code Connect links each Figma component to the component in your repository, so the agent is pointed at your real
Buttoninstead of writing a new one. It needs a Professional, Organization, Government or Enterprise plan and a Full or Dev seat. - Writing to the canvas lets agents build and update frames, components and variables in Figma, using your design system as the source of truth. Figma says this is free during its beta and will later become a usage-based paid feature.
The quality of what comes out still depends on the file. A Figma file built from components and variables gives the agent structure to follow. A file of loose, detached frames gives it pictures to imitate.
5. A registry the agent can search
When an agent needs a component that does not exist yet, the next best thing to inventing one is installing an approved one. The shadcn MCP server lets an agent browse, search and install components from registries configured in a project's components.json: the public shadcn registry, third-party registries, or a private registry for your own company's components. The shadcn docs give setup steps for Claude Code, Cursor, VS Code, Codex and OpenCode.
A private registry turns "build me a pricing table" from an invention into a lookup: the agent installs your team's pricing table, already on your tokens.
Is your design system agent-ready?
- Every colour, spacing step, radius, shadow and duration is a token
- Tokens have descriptions that say when to use them, and when not to
- Code uses tokens, not raw values, almost everywhere
- One component per job, with typed props
- Component names match between Figma and code
- A rules file at the repository root says where components live and what never to do
- The rules are specific enough to check
- The Figma file is built from components and variables, not detached frames
- Figma components are linked to code with Code Connect, if your plan allows it
- Empty, loading and error states are designed, so the agent is not left to improvise them
Every unchecked line is a place where the agent will guess.
What agents still cannot decide for you
A well-built system lets an agent assemble screens quickly and consistently. It does not let it decide what the screen is for. Which action matters most, what a first-time user sees, what happens when a payment fails, what the empty state says: those are design decisions. An agent asked to make them anyway will make the most average choice available.
That is why the work divides cleanly. Decide the product, the states and the system first, as a designer. Then let agents build against it, with the rules file keeping them honest. More on briefing agents that way is in brief a cloud agent like a design engineer, and the protocol underneath is explained in what an MCP server is.
How I can help
My product design sprint is $1,999 fixed for 14 days: every screen of your product designed, including empty, loading and error states, with a component library your developers build against, a clickable prototype and the decisions written down beside the screens, in a Figma file you own. It is design only, for teams that already have developers to build it. Retrofitting a design system across a large, mature product is its own project and does not fit the sprint.
If an agent has already built a prototype and it needs to become a real product, the vibe-coded prototype to production sprint starts from $1,999. For inspiration on what a mature system looks like, see these design system examples.
FAQ
Frequently asked questions
Being written down where the agent can read it: tokens in a machine-readable file with descriptions, components in code with typed props and the same names as the design file, usage rules in a file such as AGENTS.md or CLAUDE.md, and a connection to the design source.
Yes. The Design Tokens Community Group published the first stable version of its format, 2025.10, on 28 October 2025. Tokens are JSON objects with a required $value, plus optional $type and $description.
An open format for giving coding agents instructions about a project, described as a README for agents. Its site says over 60,000 open source projects use it, and Claude Code can read it in place of CLAUDE.md.
Through the Figma MCP server, yes. It gives connected agents such as Claude Code, Cursor and Codex the layout, variables and components of a frame, and is available on Starter, Professional, Education, Organization, Government and Enterprise plans.
A link between each Figma component and the matching component in your codebase, so agents using the Figma MCP server reuse your real components. It needs a Professional, Organization, Government or Enterprise plan and a Full or Dev seat.
For the decisions, yes. Agents assemble screens well from a good system, but they do not decide what matters most on a screen, what new users see or how failures are handled. Asked to, they make the most average choice.
Tell it where your components live and to use them first, in a rules file it loads every session. Ask it to report any new component it adds, link Figma components to code, and give it a registry of approved components to install from.
Want it done for you? I offer product design on a fixed price, from $700. See pricing.