Generate and optimize brand logos. LLM SVG generation with SVGO optimization, favicon variants, and vision-model critique loop.
Install
npx skillscat add phrazzld/claude-config/brand-logo Install via the SkillsCat registry.
We need to produce a 2-3 sentence plain-text summary, objective, factual, no marketing language, no superlatives, no calls to action. Max 60 words. Should explain what skill does, what problem it solves, when to use. We need to avoid marketing fluff. Just state: The skill generates SVG brand logos via LLM, optimizes with SVGO, creates favicon variants, uses vision-model critique to select best. It solves the need for quick, scalable logo creation with optimization and variant generation. Use when developing brand assets, needing multiple logo candidates and favicon set.
/brand-logo
Generate brand logos through AI with automated optimization.
What This Does
Creates SVG logos using LLM generation, optimizes with SVGO, generates favicon
variants, and uses a vision-model critique loop to select the best candidate.
Process
Phase 1: Context
Read brand.yaml for identity, palette, and voice:
node ~/Development/brand-kit/dist/src/cli.js validate brand.yamlExtract: brand name, brand_hue, primary color, category, personality traits.
Phase 2: Generate Candidates
Generate 4 SVG logo candidates using LLM with constrained prompts:
Prompt template:
Generate a minimal SVG logo for "[brand name]".
Constraints:
- Viewbox: 64x64
- Max 3 shapes (geometric primitives only)
- Colors: only use [primary hex] and [foreground hex]
- Style: [geometric|minimal|abstract|typographic]
- No text elements (wordmark is separate)
- No gradients, no filters, no embedded images
- Clean, scalable, distinctive at 16pxGenerate 4 variants with different styles.
Phase 3: Critique Loop
For each candidate:
- Save as temporary SVG
- Convert to PNG at 512px for vision model review
- Score on: distinctiveness, scalability, brand alignment, simplicity
- Select top 2 candidates
Phase 4: User Approval
Present top 2 candidates via AskUserQuestion:
- Show rendered previews
- Ask for selection or request modifications
Phase 5: Optimize + Variants
# Optimize SVG
npx svgo --config '{"plugins":["preset-default",{"name":"removeViewBox","active":false}]}' logo.svg -o logo-optimized.svg
# Generate favicon variants
for size in 16 32 48 180 192 512; do
npx sharp-cli -i logo-optimized.svg -o "favicon-${size}.png" resize $size $size
done
# Generate ICO (16+32+48)
# Use sharp to combine into ICO formatPhase 6: Update brand.yaml
Add logo paths to identity.logo:
identity:
logo:
svg: ./assets/logo.svg
mark: ./assets/logo-mark.svg
favicon: ./assets/favicon.icoOutput
assets/
logo.svg # Full optimized logo
logo-mark.svg # Icon/mark only
favicon-16.png
favicon-32.png
favicon-48.png
favicon-180.png # Apple touch icon
favicon-192.png # Android
favicon-512.png # PWA splash
favicon.ico # Multi-resolution ICORelated Skills
/brand-init— Create brand.yaml (prerequisite)/brand-assets— Generate OG cards using brand tokens/nano-banana— AI image generation (complementary for non-logo assets)