Installs just this skill. Get the whole plugin for auto-invocation.
โก How it fires
How this skill gets triggered: by you, by Claude, or both.
Fires itselfClaude auto-loads it when your prompt matches the work.
You can call itInvoke it directly when you want it.
Slash command/ss-lint
๐๏ธ Context preview
The summary Claude sees to decide when to auto-load this skill.
Quick automated lint โ detects common design system violations in seconds
๐ Stats
Stars819
Forks73
LanguageTypeScript
LicenseMIT
๐ฆ Ships with styleseed
</> SKILL.md
ss-lint.SKILL.md
---name: ss-lint
description: Quick automated lint โ detects common design system violations in seconds
argument-hint: "[file-path or directory]"
allowed-tools: Read, Grep, Glob, Bash
---# Design Lint (Quick Check)
Read `PRODUCT-PRINCIPLES.md`, the selected output grammar, `ADAPTERS.md`, and `STYLESEED.md`
before classifying a match. Lint detects deterministic drift; it must not flag an exact
grammar/profile/adapter contract as a violation or let an arbitrary lock value create an
exception.
## When NOT to use
- For deeper review of design judgment (composition, hierarchy, rhythm) โ use `/ss-review`
- For accessibility specifically โ use `/ss-a11y`
- For Nielsen UX heuristics โ use `/ss-audit`
- For applying refactors โ this only flags violations; use `/ss-review` to fix
Target: **$ARGUMENTS**
## What This Does
Fast, grep-based scan for common design violations. Runs in seconds (unlike /ss-review which is a deep manual audit). Run this after every file change.
## Checks
### 1. Hardcoded Colors
Search for hex colors in className strings that should be semantic tokens:
```bash
grep -n '#[0-9a-fA-F]\{3,8\}' [file] | grep -v 'theme.css\|tokens\|\.json'
**Violation:** `text-[var(--text-sm)]` or `--text-sm: 13px` in theme.css
**Fix:** Use explicit `text-[13px]`. CSS variable font sizes conflict with Tailwind v4's `--text-*` namespace โ Tailwind reads them as color, not font-size.
### 8. className Without cn()
```bash
grep -n 'className={`' [file]
```
**Violation:** Template literal className
**Fix:** Use `cn()` for all className composition
## Output Format
```
๐ด FAIL [file:line] Hardcoded hex: text-[#3C3C3C] โ use text-text-primary
๐ด FAIL [file:line] Raw px: p-[24px] โ use p-6
๐ก WARN [file:line] Physical prop: ml-2 โ use ms-2
๐ก WARN [file:line] Missing data-slot on MyComponent
๐ข PASS No violations found
Total: X errors, Y warnings
```
If errors > 0, list specific fixes for each violation.