Stitch Taste Design System
google-labs-code/stitch-skills
Generates a DESIGN.md design-language file for Google Stitch that encodes color, typography, layout, component behavior and motion rules to avoid generic AI-looking UI.
Extract a complete design system from an existing website or screenshot into a DESIGN.md file.
$ npx skills add jezweb/claude-skills --skill design-system -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install jezweb/claude-skills design-system --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/jezweb/claude-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/frontend/skills/design-system .claude/skills/design-system && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "design-system" agent skill from https://github.com/jezweb/claude-skills/tree/main/plugins/frontend/skills/design-system into .claude/skills/design-system/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "design-system", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/jezweb/claude-skills/tree/main/plugins/frontend/skills/design-systemType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add jezweb/claude-skills --skill design-system -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install jezweb/claude-skills design-system --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jezweb/claude-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/plugins/frontend/skills/design-system .agents/skills/design-system && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "design-system" agent skill from https://github.com/jezweb/claude-skills/tree/main/plugins/frontend/skills/design-system into .agents/skills/design-system/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "design-system", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add jezweb/claude-skills --skill design-system -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install jezweb/claude-skills design-system --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jezweb/claude-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/plugins/frontend/skills/design-system .cursor/skills/design-system && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "design-system" agent skill from https://github.com/jezweb/claude-skills/tree/main/plugins/frontend/skills/design-system into .cursor/skills/design-system/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "design-system", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/jezweb/claude-skills.git --path plugins/frontend/skills/design-system--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add jezweb/claude-skills --skill design-system -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install jezweb/claude-skills design-system --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jezweb/claude-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/plugins/frontend/skills/design-system .gemini/skills/design-system && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "design-system" agent skill from https://github.com/jezweb/claude-skills/tree/main/plugins/frontend/skills/design-system into .gemini/skills/design-system/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "design-system", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install jezweb/claude-skills design-systemInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add jezweb/claude-skills --skill design-system -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/jezweb/claude-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/plugins/frontend/skills/design-system .github/skills/design-system && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "design-system" agent skill from https://github.com/jezweb/claude-skills/tree/main/plugins/frontend/skills/design-system into .github/skills/design-system/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "design-system", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add jezweb/claude-skills --skill design-system -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install jezweb/claude-skills design-system --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jezweb/claude-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/plugins/frontend/skills/design-system .opencode/skills/design-system && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "design-system" agent skill from https://github.com/jezweb/claude-skills/tree/main/plugins/frontend/skills/design-system into .opencode/skills/design-system/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "design-system", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
design-systemExtract a complete design system from an existing website or screenshot into a DESIGN.md file.
Design System is an agent skill from jezweb/claude-skills. Extract a complete design system from an existing website or screenshot into a DESIGN.md file. Analyses colours, typography, component styles, spacing, and atmosphere through browser automation and HTML inspection. Produces a semantic design system document optimised for consistent page generation. Triggers: 'extract design system', 'design system', 'create DESIGN.md', 'analyse the design', 'what design does this site use', 'extract styles from', 'reverse engineer the design'.
Its SKILL.md is about 2.2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts. Compatibility notes: claude-code-only
It sits in Frontend & Design, covering Design systems, Design tokens and Typography. It works with Google Stitch and Playwright. The repository describes itself as: Skills for Claude Code CLI such as full stack dev Cloudflare, React, Tailwind v4, and AI integrations. The licence is MIT.
7 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 64965d9. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
ReadWriteEditBashGlobGrepFrom allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are typescript and json).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
STITCH_API_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
claude-code-only
From compatibility in the SKILL.md frontmatter.
Design System loads about 2.2k tokens when it runs. Until then it costs about 124 tokens; SKILL.md has 935 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
allowed-tools: Read, Write, Edit, Bash, Glob, GrepAutomated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from jezweb/claude-skills at commit 64965d9, republished under its MIT licence (© jezweb). 935 words, ~2,202 tokens.
.claude/skills/design-system/SKILL.md (or your agent's skills folder).Analyse an existing website, HTML file, or screenshot and synthesise a semantic design system into a DESIGN.md file. The output is optimised for use with the design-loop skill and general page generation.
.design/DESIGN.md before running the design loopAsk the user for one of:
| Source | Method |
|---|---|
| Live URL | Browse via Playwright CLI or scraper, screenshot + extract HTML |
| Local HTML file | Read the file directly |
| Screenshot image | Analyse visually (limited — no exact hex extraction) |
| Existing project | Scan site/public/ for HTML files to analyse |
| Stitch project | Use @google/stitch-sdk to fetch screen HTML + design theme |
Browse the site using Playwright CLI:
playwright-cli -s=design open {url}
playwright-cli -s=design screenshot --filename=.design/screenshots/source-desktop.pngExtract the full HTML — either via scraper MCP or by reading the page source
Resize and screenshot mobile (375px):
playwright-cli -s=design resize 375 812
playwright-cli -s=design screenshot --filename=.design/screenshots/source-mobile.pngClose the session: playwright-cli -s=design close
Read the file directly and extract design tokens from the source.
Analyse the image visually. Note: colour extraction will be approximate without HTML source. Flag this limitation in the output.
If @google/stitch-sdk is installed and STITCH_API_KEY is set:
import { stitch } from "@google/stitch-sdk";
// List projects to find the target
const projects = await stitch.projects();
// Get project details (includes designTheme)
const project = stitch.project(projectId);
const screens = await project.screens();
// Get HTML from the main screen
const screen = screens[0]; // or find by title
const htmlUrl = await screen.getHtml();
const imageUrl = await screen.getImage();The Stitch designTheme object provides structured tokens directly:
{
"colorMode": "DARK",
"font": "INTER",
"roundness": "ROUND_EIGHT",
"customColor": "#40baf7",
"saturation": 3
}Map these to DESIGN.md sections:
colorMode → Theme (Light/Dark)font → Typography font familyroundness → Component border-radius (ROUND_EIGHT = 8px, ROUND_SIXTEEN = 16px, etc.)customColor → Primary brand coloursaturation → Colour vibrancy (1-5 scale)Then also download and analyse the HTML for the full palette (Stitch's theme object only has the primary colour — the full palette is in the generated CSS).
Extract these from the HTML/CSS source:
Look in these locations (priority order):
:root { --primary: #hex; } or @theme blocks<script> block with tailwind.config or @theme in <style>style="color: #hex" or style="background: #hex"bg-blue-600, text-gray-900 (map to palette)For each colour found, determine its role:
| Role | How to identify |
|---|---|
| Primary | Buttons, links, active states, brand elements |
| Background | <body> or <html> background |
| Surface | Cards, containers, elevated elements |
| Text Primary | <h1>, <h2>, main body text |
| Text Secondary | Captions, metadata, muted text |
| Border | Dividers, input borders, card borders |
| Accent | Badges, notifications, highlights |
Extract:
| Token | Where to find |
|---|---|
| Font families | Google Fonts <link>, @import, font-family in CSS |
| Heading weights | font-bold, font-semibold, or explicit font-weight |
| Body size | Base font-size on <body> or root |
| Line height | leading-* classes or line-height CSS |
| Letter spacing | tracking-* classes or letter-spacing CSS |
Identify patterns for:
max-w-* or explicit max-widthCritical: The DESIGN.md should describe the design in semantic, natural language supported by exact values. This is not a CSS dump — it's a document a designer or AI can read to understand and reproduce the visual language.
| Don't write | Write instead |
|---|---|
rounded-xl | "Softly rounded corners (12px)" |
shadow-md | "Subtle elevation with diffused shadow" |
#1E40AF | "Deep Ocean Blue (#1E40AF) for primary actions" |
py-16 | "Generous section spacing with breathing room" |
Output the file to .design/DESIGN.md (or user-specified path).
Follow the structure from the design-loop skill's references/site-template.md — specifically the DESIGN.md Template section. The key sections are:
If browser automation is available:
Present:
If the site has multiple pages with different styles:
bg-slate-900 needs mapping to a role.dark class overrides or prefers-color-scheme media queries.dark class or media query)© jezweb, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in plugins/frontend/skills/design-system of jezweb/claude-skills.
Open the folder on GitHubat commit 64965d9
Design System next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Design System this skilljezweb/claude-skills | 1.1k | — | ~2.2k | Automated safety check: Notes | MIT | |
| Stitch Taste Design Systemgoogle-labs-code/stitch-skills | 8.4k | 15 repos | ~3.1k | Automated safety check: Pass | Apache-2.0 | |
| Extract Design Systemespennilsen/pi | 122 | — | ~2k | Automated safety check: Pass | MIT | |
| Oma Designfirst-fluke/oh-my-agent | 1.3k | — | ~2.9k | Automated safety check: Pass | MIT | |
| SkilluiCraftOS-dev/CraftBot | 392 | — | ~1.2k | Automated safety check: Pass | MIT | |
| Design SystemOhh-889/skyroc | 795 | 11 repos | ~1.7k | Automated safety check: Pass | MIT |
google-labs-code/stitch-skills
Generates a DESIGN.md design-language file for Google Stitch that encodes color, typography, layout, component behavior and motion rules to avoid generic AI-looking UI.
espennilsen/pi
Reverse-engineer a design system from a live website (public URL or localhost).
first-fluke/oh-my-agent
AI design specialist skill with DESIGN.md management, anti-pattern enforcement, optional Stitch MCP integration, and component library guidance.
CraftOS-dev/CraftBot
Reverse-engineer any website's, repo's, or local project's design system into a Claude-ready skill via the SkillUI CLI.
Ohh-889/skyroc
Token architecture, component specifications, and slide generation.
scalar/scalar
Scalar's design system — design tokens, theming (@scalar/themes), CSS variables, and the @scalar/components library.
jezweb/claude-skills
Build conversational AI voice agents on the ElevenLabs platform.
jezweb/claude-skills
Generate custom favicons from logos, text, or brand colours.
jezweb/claude-skills
Set up Tailwind v4 + shadcn/ui themed UI with dark mode. An agent skill from jezweb/claude-skills.
jezweb/claude-skills
All-in-one project configuration and health management. An agent skill from jezweb/claude-skills.
jezweb/claude-skills
Test website responsiveness across viewport widths using browser automation.
jezweb/claude-skills
Build MCP servers in Python with FastMCP. An agent skill from jezweb/claude-skills.
Works with
Categories
Extract a complete design system from an existing website or screenshot into a DESIGN.md file. Design System is an agent skill from jezweb/claude-skills.md file.
Design System fits situations like: tasks that involve Design systems; tasks that involve Design tokens; tasks that involve Typography.
Run `npx skills add jezweb/claude-skills --skill design-system -a claude-code`. Or copy the skill folder (plugins/frontend/skills/design-system in jezweb/claude-skills) into .claude/skills/design-system in your project. Claude Code loads it when a task matches its description.
Run `npx skills add jezweb/claude-skills --skill design-system -a codex`. Or copy the skill folder (plugins/frontend/skills/design-system in jezweb/claude-skills) into .agents/skills/design-system in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add jezweb/claude-skills --skill design-system -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/design-system, .gemini/skills/design-system, .github/skills/design-system and .opencode/skills/design-system in your project.
Going by SKILL.md and its folder, Design System needs credentials named STITCH_API_KEY. Our summary lists: A credential in STITCH_API_KEY. Its frontmatter pre-approves these tools: Read, Write, Edit, Bash, Glob, Grep. Compatibility (from SKILL.md): claude-code-only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
Design System is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.2k tokens (SKILL.md is roughly 8.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Design System: Stitch Taste Design System (google-labs-code/stitch-skills, 8.4k stars), Extract Design System (espennilsen/pi, 122 stars), Oma Design (first-fluke/oh-my-agent, 1.3k stars) and Skillui (CraftOS-dev/CraftBot, 392 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
jezweb (a GitHub user) maintains it in jezweb/claude-skills, which has 1,051 GitHub stars. The repository holds 52 skills in this directory. The repository was last updated on October 5, 2026.
Source: jezweb/claude-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.