Resources
1Install
npx skillscat add mutav-finance/mutav-app/gsp-icons Install via the SkillsCat registry.
This is a standalone composable skill. It works two ways:
- Standalone — user runs
/gsp-iconsdirectly for icon system design - As a building block — the creative-director invokes
/gsp-icons --enrichto add icon system specifics to creative direction
Icons are the functional glue of any interface. A consistent icon system is the difference between a polished product and a patchwork of mismatched visuals.
Input: Brand context (style, personality) or user requirements, OR --enrich mode
Output: iconography.md chunk with library, sizing, containers, and custom SVG specs
Agent: None — inline skill with structured questioning
| Input | Mode |
|---|---|
/gsp-icons --enrich |
Enrich existing imagery-style.md iconography section |
/gsp-icons |
Interactive — design icon system |
Step 1: Enrich mode (--enrich)
Read existing {BRAND_PATH}/identity/imagery-style.md. Extract iconography direction.
Enrich with:
- Specific library recommendation with npm package + import path
- Stroke width standardization
- Complete size system table (use case → size → example)
- Container treatment specs with CSS/Tailwind code
- Color rules (monochrome, brand-tinted, multi-color)
- Custom SVG specs if brand needs unique icons
Update the Iconography section of imagery-style.md. Preserve creative direction.
Step 2: Interactive mode
One AskUserQuestion at a time:
- Brand personality — use
AskUserQuestion:- Clean & minimal — "thin strokes, geometric, restrained"
- Bold & chunky — "thick strokes, filled, high impact"
- Playful & rounded — "soft corners, friendly, approachable"
- Technical & precise — "grid-aligned, systematic, detailed"
- Library preference — use
AskUserQuestion:- Lucide — "clean, consistent, 1000+ icons, MIT —
lucide-react" - Phosphor — "6 weights (thin→fill), 1500+ icons —
@phosphor-icons/react" - Heroicons — "Tailwind ecosystem, outline/solid —
@heroicons/react" - Radix Icons — "15x15 grid, minimal —
@radix-ui/react-icons" - Custom SVG — "brand needs unique iconography"
- Lucide — "clean, consistent, 1000+ icons, MIT —
- Container style — use
AskUserQuestion:- Bare — "icon only, no container"
- Circle — "rounded-full background"
- Rounded square — "rounded-lg background"
- Brand-tinted — "background uses brand color at low opacity"
Step 3: Define icon system
- Library: package name, import path, version guidance
- Weight/stroke: global standardization (e.g., strokeWidth={1.5})
- Size system:
| Use case | Size | Example |
|---|---|---|
| Inline text | 16px | breadcrumbs, metadata |
| Default UI | 20px | nav items, buttons |
| Feature | 24px | feature cards, lists |
| Hero | 32px+ | hero sections, empty states |
- Container treatment: CSS/Tailwind for each container style
- Color rules: when to use foreground, brand color, muted, multi-color
- Custom SVG specs: grid (24x24), stroke cap/join, corner radius, export format
Step 4: Write output + completion
Write iconography.md chunk or update iconography section of imagery-style.md. Target: 60-90 lines.