AI in practice
Thesis
The useful question about AI in design is not whether it can generate an interface. It is whether your system is built so that an agent can operate it correctly.
The first version of Cube was built for people who were not all technical, so a lot of it relied on conventions a person could infer. Cube Next is built the other way round, for developers and for tooling. The token layer is framework agnostic and machine readable, the naming is explicit rather than conventional, and the structure is the same in all four themes.
That change was made for the development teams. Making the system legible to an agent came with it.
The pipeline
- Design. Figma.
- Cursor with MCP. Research, including accessibility and benchmarking. Concepts. Building components from the system's own tokens and atoms. Accessibility checks and general audits. JSON files as output for the developers.
- Figma agent. First pass concepts and page starts using the design system. Not perfect, but faster than a white canvas.
- Handover. JSON token files plus Figma Dev Mode.
- Development. Headless components in React 19, Tailwind CSS v4 and Base UI, translated into Chakra UI v3.
How I specify the work
The tokens were not produced from a request. They were produced from a specification: the layer rules, the naming scheme, the ramp anchors, the per brand mapping, and what the output had to check before returning it.
Specification for the colour token system, rewritten and tightened for sharing. The tokens in the system were generated from an earlier version of this spec in Cursor.
Where it was wrong
I built an announcement bar with Cursor connected to Figma. It produced the research, the component, the correct tokens, and every screen size. On its own it was good.
Then colleagues reviewed it and found four things the model had not:
- the green it used overlapped with the colour the system already reserves for success messages
- messages auto played with no way to pause them
- the mobile layout was too crowded
- behaviour and accessibility rules needed updating to match: position, wording limits, auto play duration
The first one is the interesting failure. The component was correct by itself and wrong inside the system, because the model had no way of knowing what green already meant here. That is the part a person still has to hold.
What I want to test next
My next work is on skills for Figma agents. Three of them.
A UX writing skill, so the copy that reaches marketing is already in the right shape instead of being rewritten after handover. A translation skill that uses the wording the business units actually use in each European market, rather than a generic translation. And a set of UI rules so an agent builds with the design system correctly instead of approximately.