From aura-frog
Generate a cohesive color-token system from ONE OKLCH brand hue — primary/secondary/background/foreground/muted/border with semantic light + dark, emitted as a Tailwind v4 @theme block or a CSS-variables fallback. Use when starting a design system, defining brand colors, setting up theming/dark-mode, or replacing scattered hardcoded colors with a derived palette.
How this skill is triggered — by the user, by Claude, or both
Slash command
/aura-frog:design-tokensWhen to use
design system setup, brand color palette, OKLCH tokens, dark mode theming, generate CSS variables / Tailwind @theme, single-hue palette
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
> **AI-consumed reference.** This skill *produces* tokens; `rules/agent/theme-consistency.md` *enforces* their use. Generator vs enforcer — do not restate OKLCH logic in the rule or token-usage rules here.
AI-consumed reference. This skill produces tokens;
rules/agent/theme-consistency.mdenforces their use. Generator vs enforcer — do not restate OKLCH logic in the rule or token-usage rules here.
One hue drives the whole system. OKLCH keeps perceptual lightness constant across hues, so derived shades stay legible and dark mode is a lightness flip, not a re-pick.
--brand-hue)oklch(0.55 0.18 H) · primary-hover oklch(0.48 0.18 H)oklch(0.55 0.07 H) (same hue, low chroma)oklch(0.55 0.02 H) · border oklch(0.90 0.01 H)oklch(0.99 0.005 H) / oklch(0.20 0.02 H); dark = flip → oklch(0.16 0.02 H) / oklch(0.95 0.01 H).Keep chroma restrained (house style: one dominant hue + sharp accent, no rainbow).
@import "tailwindcss" / @theme in CSS, no tailwind.config.js colors) → emit an @theme block.tailwind.config.{js,ts} present) → emit CSS variables + reference them in theme.extend.colors.--brand-hue: 265Tailwind v4:
@theme {
--color-primary: oklch(0.55 0.18 265);
--color-primary-hover: oklch(0.48 0.18 265);
--color-secondary: oklch(0.55 0.07 265);
--color-muted: oklch(0.55 0.02 265);
--color-border: oklch(0.90 0.01 265);
--color-background: oklch(0.99 0.005 265);
--color-foreground: oklch(0.20 0.02 265);
}
CSS-variables fallback (v3 / no-Tailwind), with dark mode:
:root {
--brand-hue: 265;
--primary: oklch(0.55 0.18 var(--brand-hue));
--background: oklch(0.99 0.005 var(--brand-hue));
--foreground: oklch(0.20 0.02 var(--brand-hue));
--border: oklch(0.90 0.01 var(--brand-hue));
}
.dark {
--background: oklch(0.16 0.02 var(--brand-hue));
--foreground: oklch(0.95 0.01 var(--brand-hue));
--border: oklch(0.30 0.02 var(--brand-hue));
}
Change --brand-hue alone to re-skin the entire product.
After generating the token system, write it to .claude/design/design-system.md in the host project
(create .claude/design/ if absent) so it survives across sessions and later components conform to it —
don't re-derive fresh tokens every session. Fill the Brand (the --brand-hue + named hex values),
Type, and Spacing sections; set Source: generated. Merge, don't clobber, if the file already exists.
See rules/agent/design-system-persistence.md for the file contract.
See also: rules/agent/theme-consistency.md (enforces token usage), rules/agent/design-system-persistence.md (the SoT file), and the frontend-aesthetics skill (color hierarchy).
npx claudepluginhub nguyenthienthanh/aura-frog --plugin aura-frogGenerates a complete design system from brand colors: shade scales, semantic tokens, CSS variables, and Tailwind config. Use when starting a new project or standardizing colors.
Configures Tailwind CSS @theme for advanced design systems with semantic colors, brand scales, typography scales, line heights, and spacing tokens.
Generates a design tokens file (CSS variables or Tailwind config) with light/dark color palettes, spacing, type ramp, and component-level tokens. Useful when starting a project or establishing a visual system.