ss-a11y
Audit a component or page for accessibility issues and fix them
Generate a new UI component following the StyleSeed design conventions
$ npx -y skills add bitjaru/styleseed --skill ss-component --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/ss-componentContext preview
The summary Claude sees to decide when to auto-load this skill.
Generate a new UI component following the StyleSeed design conventions
name: ss-component description: Generate a new UI component following the StyleSeed design conventions argument-hint: "[component-name] [description]" allowed-tools: Read, Write, Edit, Grep, Glob, Bash
If either `.styleseed/project.json` or `.styleseed/artifacts/index.json` exists, require a complete, valid registry. Resolve the requested artifact ID before writing a component; ask for scope if it is ambiguous. Never fall back to the global legacy bundle, create `STYLESEED.md`, or restart setup because a registry is incomplete, invalid, or has no compiled output.
Locate the installed `ss-resolve` skill directory (shown as `<ss-resolve>` below), then run this read-only check from the target project root with the active agent (`codex`, `claude`, etc.):
node "<ss-resolve>/scripts/resolve-context.mjs" --project-root . --artifact <artifact-id> --agent <agent> --check
For a valid registry with missing or stale compiled output, run the same command without `--check`, then check again. Stop on invalid configuration or installation errors; do not change approved selections to make the check pass. After success, read only the selected `.styleseed/bundles/<artifact-id>.md` and `.styleseed/manifests/<artifact-id>.json` as the compiled method and provenance. A shared component affecting multiple artifacts requires resolving and checking each affected artifact separately, not merging their bundles.
Legacy projects use the following path only when neither registry file exists. Preserve `STYLESEED.md`; if it is missing, use setup before component code.
node "<ss-resolve>/scripts/resolve-context.mjs" --project-root . --from-lock STYLESEED.md --agent <agent> --check
For missing or stale legacy output, run the same command without `--check`, then check again. Read `.styleseed/effective-rules.md` and `.styleseed/manifest.json` only after success.
Generate a new component: **$0** Description: $ARGUMENTS
1. Apply the registry/legacy boundary above, then read the actual implementation context:
`implementation.tokenFiles`. For legacy projects, discover the existing component and stylesheet entry points from the project source.
this artifact. `css/theme.css` and `css/recipes.css` are examples, not required locations.
props, variants, and states. Reuse an existing component when it already fits the request.
or unsupported, report the gap before inventing files, aliases, tokens, or replacements.
2. Follow these conventions strictly:
3. Design token usage:
4. Typography rules:
5. Accessibility requirements:
6. Export the component as a named export (not default)
7. Place the file in the existing component directory established in step 1, inside the affected artifact's implementation scope. `src/components/ui/` is a common layout, not a path to create in every project. Route composed patterns to `/ss-pattern`.
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.
Repo: bitjaru/styleseed
Audit a component or page for accessibility issues and fix them
Audit screens for UX issues using Nielsen's heuristics and modern mobile UX best practices
Build a screen with StyleSeed's composed design method — choose or compile an output grammar, apply a brand recipe plus domain/page/profile/lock constraints,…
Generate UX microcopy (button labels, error messages, empty states, toasts) following a casual-but-polite voice and tone
Turn ONE design axis up or down as a coordinated, deterministic transform — "denser", "sharper corners", "more muted", "bolder", "flatter", "livelier". Not a…
Add appropriate user feedback states (loading, success, error, empty) to a component or page