Claude Code + Sailop: Building Unique Frontends in Minutes
Claude Code reaches for blue-500, Inter, and grid-cols-3 by default. Wire in the Sailop skill and the same prompts ship #c2592e, Bitter, and an asymmetric 2fr 3fr grid instead.
Type "build a landing page" into Claude Code and you can predict the output before it renders: bg-blue-600 buttons, Inter, grid-cols-3, rounded-lg cards with shadow-md. Not a guess, a statistical certainty. The Sailop skill changes what those same prompts produce. Here's how to wire it up and what actually changes.
The Problem With AI + Frontend
Ask Claude Code for a landing page and you get Tailwind defaults: blue buttons, Inter, grid-cols-3, shadow-md cards. Not because Claude lacks capability, but because it lacks constraints. This is the AI design monoculture in action. With no design direction, a language model reaches for the highest-probability tokens in its training data, and those tokens are blue-500 and rounded-lg.
Sailop hands Claude Code a design system before the first token. Instead of reaching for defaults, it reaches for your project's tokens.
Setting Up the Sailop Skill
Sailop installs as a Claude Code skill, a command Claude can invoke mid-session:
# Install Sailop globally
npx sailop install
# Set up the Claude Code skill
sailop setup --global
# Or set up for the current project only
sailop setupThis registers the /sailop command in your Claude Code environment. After setup, Claude knows about Sailop's design system, its scanning rules, and its generation commands.
Using /sailop in Claude Code
Activation is one line. In your session, type:
/sailopThat loads the skill into Claude's context. From there, Claude Code will:
- Generate against your design system instead of Tailwind defaults
- Check its own output against the 73 rules before showing it to you
- Pull non-AI palettes, type pairings, and spacing from your tokens
- Wire in accessibility patterns like
prefers-reduced-motionand:focus-visible
The Design System Generation Flow
The first time you activate Sailop on a project, it generates a full design system:
# Generate a seed-based design system
sailop generate --seed "my-saas-2026"
# This creates:
# - Color palette (non-blue primary, hue-shifted neutrals)
# - Typography pairing (serif display + sans-serif body)
# - Spacing scale (includes off-grid values like 14px, 22px)
# - Border radius tokens (varied per element type)
# - Animation curves (custom cubic-bezier values)
# - Shadow definitionsThe seed makes it reproducible. Same seed, same system. Change one character of the seed and you get a different hue, a different font stack, a different radius set. The math behind that is in how Sailop generates infinite palettes. Every project gets a distinct look with zero manual design work.
MCP Tool Integration
The skill is the Claude Code path. The MCP server is the portable one: any MCP-compatible client can call Sailop the same way. Sailop runs as an MCP server you point your editor at:
{
"mcpServers": {
"sailop": {
"command": "sailop",
"args": ["mcp"],
"env": {}
}
}
}The server exposes four tools:
- sailop_scan: analyze code for AI patterns
- sailop_generate: create a design system
- sailop_fix: rewrite code to match the system
- sailop_check: validate code against the rules
Real Workflow Example
A typical session:
You: /sailop
Claude: Sailop skill loaded. I'll use your project's design system
for all frontend generation.
You: Build a pricing page with 3 tiers.
Claude: I'll create the pricing page using your Sailop design system.
[Generates code with:]
- Bitter serif headings instead of Inter
- #c2592e accent instead of blue-500
- Asymmetric grid (2fr 3fr) instead of repeat(3, 1fr)
- 14px and 22px spacing instead of strict 4px multiples
- cubic-bezier(0.22, 1, 0.36, 1) transitions
- 4px button radius, 7px card radius
- Warm off-white (#f5f0eb) backgroundThe DOM is functionally identical to Claude's normal output. The fingerprint is not. No blue buttons. No rounded-lg on everything. No shadow-md. (Three identical tiers are their own tell, by the way: see why 3 identical cards kill conversion.)
Before and After
Without Sailop, ask Claude Code for a feature card and you get this:
// Without Sailop
<div className="bg-white rounded-lg shadow-md p-6 hover:shadow-lg
transition-all duration-300 ease-in-out">
<div className="text-blue-500 text-2xl mb-4">
<IconComponent />
</div>
<h3 className="text-lg font-semibold text-gray-900">Feature Name</h3>
<p className="text-gray-600 mt-2">Feature description goes here.</p>
</div>With Sailop active:
// With Sailop
<div style={{
background: 'var(--c-bg-raised)',
borderRadius: 'var(--r-card)',
padding: 'var(--s-22)',
border: '1px solid var(--c-border)',
transition: 'transform 250ms cubic-bezier(0.34, 1.56, 0.64, 1),
box-shadow 250ms cubic-bezier(0.22, 1, 0.36, 1)',
}}>
<h3 style={{
fontFamily: 'var(--f-display)',
fontWeight: 700,
fontSize: '16px',
letterSpacing: '-0.02em',
color: 'var(--c-fg)',
}}>Feature Name</h3>
<p style={{
color: 'var(--c-fg-body)',
marginTop: 'var(--s-8)',
textWrap: 'pretty',
lineHeight: 1.62,
}}>Feature description goes here.</p>
</div>Same structure. Different visual fingerprint. The second version pulls CSS custom properties, a serif display face, off-grid spacing (--s-22 resolves to 22px, not a 4px multiple), and a slight-overshoot easing curve on transform. For the full teardown, see the Grade F to Grade A case study.
Works With Cursor Too
Because the MCP path is editor-agnostic, the same tokens reach any MCP client:
- Claude Code: the
/sailopskill command - Cursor: the MCP server config above
- Other MCP clients: the standard protocol, no Sailop-specific glue
The AI gets your design system and generates against it. The editor doesn't matter.
Measuring the Difference
After a session with Sailop active, scan the output:
sailop scan ./src --verboseSailop-built projects typically land at 15-30 on the DNA scale (Grade A to B). The same prompts without Sailop land at 60-85. That's the gap between "clearly AI-generated" and "looks like someone designed it." For the end-to-end workflow, read the complete guide to anti-AI design.
Get started at sailop.com: npx sailop install, then sailop setup --global, then /sailop in your next session.
SHIP CODE THAT LOOKS INTENTIONAL
Scan your frontend for AI patterns. Generate a unique design system. Stop shipping the same blue gradient as everyone else.