Help us improve
Share bugs, ideas, or general feedback.
From design-intent
Generates brand SVG icons from descriptions or base SVGs, producing platform assets: favicon package (ICO, dark/light SVG, apple-touch-icon), PWA manifest icons, and mobile app icons.
npx claudepluginhub joaquimscosta/arkhe-claude-plugins --plugin design-intentHow this skill is triggered — by the user, by Claude, or both
Slash command
/design-intent:icon-forgeThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Generate brand icons as SVG and produce all required platform assets from a single source.
Generates project-specific SVG icon sets with consistent style specs for websites and apps. Activates on custom icon requests or projects needing visual assets like service icons.
Generates square PNG icons with transparent backgrounds for app icons, favicons, and UI using Google Gemini. Supports flat/3D/line/glyph/gradient/minimal styles, sizes 128-1024px, batch sets, reference matching.
Designs and iterates on SVG logos via structured interviews for format, style, colors, and sizes. Generates side-by-side previews and PNG exports at standard sizes.
Share bugs, ideas, or general feedback.
Generate brand icons as SVG and produce all required platform assets from a single source.
Follow these phases in order. Skip to Phase 4 if user provides --svg <path>. Use --base <path> to load an existing SVG as a design seed for Phase 2 iteration.
Gather brand information before designing. Ask about:
If $ARGUMENTS contains a brand description, extract info and minimize questions.
Generate 2-3 concept variations as SVG. Apply the chosen style preset's SVG techniques from WORKFLOW.md (see Style-to-SVG Technique Table). Design for three progressive detail tiers: Glyph (16px, 2-4 shapes), Mark (192px, full logomark), Master (1024px, rich detail). Present concepts, let user choose, iterate.
If --base <path> was provided: Read the existing SVG, analyze its shapes/colors/structure, and use it as a starting point instead of generating from scratch. Present the original alongside 2 improved variations that apply the chosen style preset. See WORKFLOW.md "Design Seed Workflow" for details.
SVG structure requirements:
<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg" role="img" aria-labelledby="icon-title">
<title id="icon-title">Brand Name</title>
<style>
.primary { fill: #2563eb; }
.accent { fill: #1e40af; }
</style>
<path class="primary" d="..."/>
</svg>
Validation checklist:
0 0 100 100 brand icons; 0 0 24 24 for UI-style marks)width/height attributes on root <svg><title> as first child, role="img" on root (accessibility)<text> elements (text does not scale to 16px)xmlns attribute presentDuplicate the master SVG and embed a @media (prefers-color-scheme: dark) block:
<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg" role="img" aria-labelledby="fav-title">
<title id="fav-title">Brand Name</title>
<style>
.bg { fill: #ffffff; }
.fg { fill: #1a1a2e; }
@media (prefers-color-scheme: dark) {
.bg { fill: #1a1a2e; }
.fg { fill: #e0e0ff; }
}
</style>
<rect class="bg" width="100" height="100" rx="12"/>
<path class="fg" d="..."/>
</svg>
Rules: dark foreground becomes light, light backgrounds become dark, maintain >= 4.5:1 contrast.
Duplicate the master SVG and replace all colors with currentColor. Remove <style>, gradients, and filters — produce a single-color silhouette that inherits its color from CSS. Save as monochrome.svg. See WORKFLOW.md for details.
Save master SVG and dark-mode SVG to the project.
Framework detection — before running the script, detect the target project:
next.config.(js|mjs|ts) exists AND app/layout.(tsx|jsx|js) exists → add --framework nextjs--framework (default generic output)uv run <skill-scripts-dir>/generate_assets.py \
--svg <master-svg-path> \
--dark-svg <dark-svg-path> \
--bg-color "<brand-bg-color>" \
--name "<app-name>" \
--framework nextjs \ # omit if not Next.js App Router
--output-dir ./brand-assets
Replace <skill-scripts-dir> with the absolute path to this skill's scripts/ directory.
Omit --framework for non-Next.js projects. With --framework nextjs, outputs icon.svg and apple-icon.png (Next.js App Router conventions).
Requires rsvg-convert (brew install librsvg) or magick (brew install imagemagick).
Present to the user:
_nextjs-guide.txt for Next.js, or _html-snippet.html for other frameworks)app/ + public/, Vite public/, CRA public/)viewBox — 0 0 100 100 for brand icons (default), 0 0 24 24 for UI-style marks. No width/height attributes<title> as first child with brand name, role="img" on root <svg>fill="currentColor" alongside the branded master<linearGradient>, <radialGradient>, and subtle <filter> effectsrx/ry for approachable feel when appropriateSee WORKFLOW.md for detailed workflow and EXAMPLES.md for examples. See TROUBLESHOOTING.md for common issues.