Skip to content
Development
Skill

/ss-tokens

Generate an accessible semantic palette from a key color, or view, add, and modify StyleSeed design tokens. Use when a user supplies a brand color, asks which colors combine well, needs light/dark theme roles, or needs token files for implementation.

From plugin
styleseed
95224 skills
Install
$ npx -y skills add bitjaru/styleseed --skill ss-tokens --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/ss-tokens

Context preview

The summary Claude sees to decide when to auto-load this skill.

Generate an accessible semantic palette from a key color, or view, add, and modify StyleSeed design tokens. Use when a user supplies a brand color, asks which colors combine well, needs light/dark theme roles, or needs token files for implementation.

SKILL.md

ss-tokens.SKILL.md
name: ss-tokens
description: Generate an accessible semantic palette from a key color, or view, add, and modify design tokens. Use when a user supplies a brand color or needs light/dark theme roles.
argument-hint: "[action: generate|list|add|update] [token-type: color|spacing|shadow|radius|typography]"
allowed-tools: Read, Write, Edit, Grep, Glob, Bash

Design Token Manager

Registry-first artifact boundary

When `.styleseed/project.json` and `.styleseed/artifacts/index.json` exist, resolve the requested artifact ID first, then read only `.styleseed/bundles/<artifact-id>.md` and `.styleseed/manifests/<artifact-id>.json`. Never fall back to the global legacy bundle for a registry project. Legacy projects may use `.styleseed/effective-rules.md` only when no registry exists.

When NOT to use

  • For applying tokens in components → use `/ss-component` or `/ss-pattern`
  • For finding token violations in existing code → use `/ss-lint`
  • For non-CSS token systems (Figma, native iOS/Android) — Tailwind v4 / CSS variables only

Action: **$0** | Token type: **$1** Arguments: $ARGUMENTS

Token File Locations

| Type | JSON Source | CSS Implementation | |------|-----------|-------------------| | Colors | `tokens/colors.json` | `css/theme.css` `:root` + `@theme inline` | | Typography | `tokens/typography.json` | `css/fonts.css` + `css/base.css` | | Spacing | `tokens/spacing.json` | Tailwind utilities (no custom CSS needed) | | Radius | `tokens/radii.json` | `css/theme.css` `@theme inline` | | Shadows | `tokens/shadows.json` | `css/theme.css` `:root` |

Instructions

`generate color` — Derive the system from one key color

Do not pick a second color by eye or copy a preset. Run the shared StyleSeed generator:

node <installed-ss-tokens>/scripts/generate-palette.mjs \
  --key-color "#276B5E" \
  --mode light \
  --character calm \
  --harmony auto \
  --temperature neutral \
  --out .styleseed/palette.json

The generator is bundled inside this skill for skills-only installations and is deterministically mirrored from the canonical `engine/color` source during repository generation.

Supported controls are `light|dark` mode, `calm|balanced|vivid|deep` character, `auto|tonal|adjacent|contrast` harmony, and `neutral|warm|cool` surface temperature. The generator preserves the key hue, maps chroma into sRGB without channel clipping, builds 11-step OKLCH primary/accent ramps, scores the accent against the key and reserved status hues, maps primitives to semantic roles, and adjusts fill lightness until text/action/focus pairs pass.

Use `--format css` for CSS variables or JSON for an auditable result. Never mark the palette valid unless `valid` is true and every item in `contrast` passes. In `STYLESEED.md`, persist `Key color`, `Palette character`, `Palette mode`, `Palette harmony`, and `Surface temperature`, then run `$ss-resolve`; the resolver emits the same `.styleseed/palette.json` and `palette.css`.

`list` — Show current tokens

Read and display the requested token file in a formatted table.

`add` — Add new token

1. Add the token to the JSON source file (`tokens/*.json`) 2. Add the CSS custom property to `css/theme.css` under `:root` 3. If it needs a Tailwind utility, add to the `@theme inline` block 4. If it has a dark mode variant, add to the `.dark` block

`update` — Modify existing token

1. Update the value in the JSON source file 2. Update the CSS custom property in `theme.css` 3. Check all components for direct usage that might need updating

Rules

  • Always keep JSON and CSS in sync
  • Use semantic names, not descriptive names (`--success` not `--green-500`)
  • Colors should support both light and dark modes
  • New tokens must be added to BOTH the JSON source AND the CSS implementation
  • Treat preset recipes as maintained defaults, not the limit of available colors.
  • Character and role allocation are stronger design controls than complementary/triadic geometry alone.
Read more
Ships withstyleseed

Open-source design-method engine for Claude Code, Codex & Cursor. 23 agent skills for fixed design judgment, multiple grammars, semantic palettes, reference compilation, and evidence-verified UI. MIT.

Get the whole plugin
Stats
956
Stars
87
Forks
Active
Maintenance
JavaScript
Language
MIT
License
3h ago
Last commit
5mo ago
Created

Repo: bitjaru/styleseed

Other skills on styleseed.