Your design system, enforced on every agent.
Gate imports your design system from your code, Figma and VOICE.md. Your coding agents get it before they write, and every pull request is checked against it, with the fix ready to commit.
How Gate works
- It imports your design system
Tokens, a Tailwind config, CSS variables or a DESIGN.md from your repo. Color and text styles from Figma. A VOICE.md for the words. Gate turns them into one kit.
- Your agents get it before they write
Claude Code, Cursor, Codex and any MCP-capable agent read your kit from Rams before they touch UI. The first draft starts from your tokens and your words.
- Every PR is checked against it
Gate flags colors, sizes, spacing, radii and fonts that are off your kit, and copy that breaks your voice. Each finding comes with the fix, ready to commit. Run it as a warning or as a required check.
Without Gate and with Gate
The same settings screen for Fieldnote, a sample brand. Left, built from stock components. Right, held to the Fieldnote kit by Gate.
- Title and bodyfontSize.2xl fontSize.base
- List rowspacing.24 radius.lg radius.full
- Inputradius.lg spacing.16 color.moss-600
- Checkbox to togglecomponents.toggle color.moss-600
- Buttonradius.full spacing.24 color.moss-600
What Gate catches
Five checks measure values against your tokens, and the same files always give the same result. The sixth reads your VOICE.md.
- Colors off your palette
A hex, rgb or utility color that is not in your kit. Gate names the closest one you have.
#2F5E51becomesmoss-600bg-[#7c3aed]becomesbg-moss-600color: #999becomesink-500 - Type sizes off your scale
A font size between the steps of your type ramp.
font-size: 17pxbecomes16pxtext-[13px]becomestext-xsfont-size: 22pxbecomes24px - Spacing off your scale
Padding, margins and gaps that miss your steps.
p-[13px]becomesp-3margin: 18pxbecomes16pxgap-[7px]becomesgap-2 - Corners off your scale
A border radius that is not one of yours.
rounded-[6px]becomesrounded-smborder-radius: 10pxbecomes8pxrounded-[3px]becomesrounded-sm - Fonts outside your kit
A font family your kit does not list, like a system fallback or a face from another project.
InterbecomesInter Tight"Times New Roman"becomesInter Tightfont-family: ArialbecomesInter Tight - Copy that breaks your voice
Button labels, errors and headings checked against your VOICE.md. New in the alpha.
Click here to submit!!becomesSendInvalid input!!becomesCheck the emailLearn MorebecomesLearn more
The alpha is free for 30 days
We take a few teams at a time and set Gate up with each one by hand.
- Day 1We set up Gate with you
On a call, we import your kit from your repo, Figma or a VOICE.md, then fix by hand whatever came in wrong. Your agents can read it the same day.
- Weeks 1 to 4Gate warns on one repo
Gate checks every pull request on that repo and suggests fixes on the line. It only warns, so nothing is held up while you see what it finds.
- Day 30A Gate readout
What Gate caught, what it got wrong, and what we changed because of you. Then you decide if you want to keep it.
Apply for the alpha
A good fit is a team whose coding agents write UI every week and who already keep a design system in code or Figma. We read every application.