Protected work

Enter the password to view this case study.

.

Agentic design system

Client

Eli Lilly

Scope

Visual Design, UI Direction

Contributers

2 UI Designers, 3 Design Lirarians

Duration

Feb - April 2026

Building an agentic pattern system across enterprise pharma marketing

An AI doesn't ask for clarification. It reads what's there, decides what it means, and publishes, and that's exactly the problem when nothing underneath it is built to be read. Lilly's marketing sites needed to feed straight into an internal AI publishing system, but there were no thin layers, no consistent naming, no structure a machine could parse without guessing.

So it guessed, building pages wrong and publishing them anyway. This is where I was brought in to define a system for 56 agentic patterns to live in.

Agentic design system

Agentic design system

Client

Eli Lilly

My role

Visual Design, UI Direction

Contributers

2 UI Designers, 3 Design Lirarians

Duration

Feb - April 2026

Building an agentic pattern system across enterprise pharma marketing

An AI doesn't ask for clarification. It reads what's there, decides what it means, and publishes, and that's exactly the problem when nothing underneath it is built to be read. Lilly's marketing sites needed to feed straight into an internal AI publishing system, but there were no thin layers, no consistent naming, no structure a machine could parse without guessing.

So it guessed, building pages wrong and publishing them anyway. This is where I was brought in to define a system for 56 agentic patterns to live in.

The problem

Two different readers needed to make sense of the same system, and neither one could yet.

Designers across four brand sites, lilly.com, Zepbound, Foundayo, Ebglyss, had no shared pattern language to build from. Every page got assembled ad hoc, which meant nothing scaled and nothing stayed consistent site to site.

The AI publishing system had a harder problem underneath that one. Bury a card inside a group inside a frame inside another group, and it couldn't tell which layer was real and which was just wrapping. It wouldn't error out. It would build the page wrong and move on. A human designer catches that kind of thing on sight. An AI system publishes it straight to a live, regulated pharma site with nobody in between to catch it first.

Naming carried the same risk from a different angle. Default names, fine for a person skimming a file, are useless for a system trying to match a layer to a schema.

The approach

I started by mapping every old block across all four sites and grouping them by family, Heroes, Feeds, Pricing and Metrics, General Cards, Long-form Content. Blocks that had been built separately, an Icon Card, an Icon List with Eyebrow, an Icon Tile, collapsed into a single new section once we could see they were solving the same problem three different ways.

Building out sections

Every new section got slots, and every slot got one name, enforced without exception. A Button Group Slot was always BGS. A Card Slot was always CS. Each slot carried a defined preferred value, so the AI had a real default to fall back on instead of guessing at intent. Claude MCP helped me move through that mapping and iteration fast enough to keep pace with a three-month timeline.

Not every section landed clean on the first pass. Some got marked for deprecation once we saw they didn't hold up across brands, others stayed open while we figured out what they actually needed to be. That's expected of a system built this fast. It wasn't finished so much as it was solid enough to keep building on.

The decision

Sixteen patterns in, the direction I'd been given changed.

I'd built those first sixteen off a direction confirmed early, before the project really got moving. New direction came down that said otherwise, and the patterns I'd already built weren't going to hold up under an AI reader regardless of which direction was right. So instead of patching what existed, we went back to all four sites and audited every page against the live code by hand, since Figma's site-capture tooling didn't exist yet.

Slower, and it cost time we didn't have much of. But it meant the second version was built on what was actually true, not what we'd assumed was true. I stopped taking a single yes as confirmation after that. If the direction mattered, I went and found whoever actually owned the decision.

What shipped

A system for 56 agentic patterns, organized into roughly twenty sections, built across four brand sites and built to extend to more as they came online. Thin enough and literal enough for the AI publishing system to read a finished page and publish it in AEM without a developer or author in the loop.

Three of the five people on the team were librarians, not designers. That wasn't an accident. Half this project was visual. The other half was structuring information so a machine could read it right the first time.