Loading...
Loading...
This skill should be used when the user asks to "recolor the Sablier icon", "Sablier icon in orange", "Sablier logo in primary color", "generate Sablier hourglass variant", "change Sablier icon color", "export Sablier icon as PNG", or "generate Sablier favicon". Generates a gradient or flat Sablier icon SVG in any color using brand palette names, hex values, or CSS color names, with optional PNG/JPG/ICO raster export.
npx skill4agent add sablier-labs/agent-skills sablier-iconassets/icon.svgviewBox="0 0 189.9 236.73".cls-1.cls-2<linearGradient><defs><linearGradient id="linear-gradient"><stop>offset="0"stop-color="#f77423"offset="1"stop-color="#fbce5b"<linearGradient id="linear-gradient-2">xlink:href="#linear-gradient"stop-color<linearGradient id="linear-gradient">widthheightassets/icon-white.svgfill="white"viewBox="0 0 386 480"--flatprimarysecondaryorangeblueprimary-startdark-300gray-400#RRGGBBRRGGBB#rrggbbredtealcornflowerbluedarkdarkdark-100dark-300| Name | Hex | Notes |
|---|---|---|
| primary-start | | Orange gradient start |
| primary-end | | Orange gradient end |
| primary / orange | | Median orange (default primary) |
| secondary-start | | Blue gradient start |
| secondary-end | | Blue gradient end |
| secondary / blue | | Median blue (default secondary) |
| secondary-desaturated | | Desaturated blue |
| dark | | Darkest background |
| dark-100 | | App background |
| dark-300 | | Card borders |
| dark-400 | | Input borders |
| gray-100 | | Body text |
| gray-400 | | Labels |
| red | | Error / destructive |
| white | | Original icon color |
| black | | Pure black (rarely used) |
| Alias | Start (offset=0, top) | End (offset=1, bottom) |
|---|---|---|
| primary / orange | | |
| secondary / blue | | |
icon.svg(h, s%, l%)s < 10s = 0hsl(h, 0%, max(l - 8, 10)%)hsl(h, 0%, min(l + 12, 90)%)s >= 10hsl(h, s%, max(l - 8, 15)%)hsl(h, floor(s * 0.9)%, min(l + 12, 88)%)endL > startLstartL = endL - 10assets/icon.svg<stop><linearGradient id="linear-gradient">stop-coloroffset="0"offset="1"stop-colorxlink:href="#linear-gradient"linear-gradient-2viewBox="0 0 189.9 236.73"widthheightsablier-icon-<color-name>.svg--flatassets/icon-white.svgprimarysecondary#ff9c00#0063fffill="white"<path>fill="none"<svg>viewBox="0 0 386 480"widthheightsablier-icon-<color-name>.svgprimary##E52E52e52e52--format png--format jpgrsvg-convertcommand -v rsvg-convert >/dev/null 2>&1 || { echo "Error: rsvg-convert not found. Install with: brew install librsvg"; exit 1; }rsvg-convertmagickcommand -v magick >/dev/null 2>&1icon.svg# PNG (transparent background, 1024px height, width auto-computed from aspect ratio ≈822px)
rsvg-convert -h 1024 "<input>.svg" -o "<output>.png"
# JPG (dark background since JPG has no transparency) — render PNG first, then convert
rsvg-convert -h 1024 "<input>.svg" -o "<output>.tmp.png"
magick "<output>.tmp.png" -background "#14161f" -flatten "<output>.jpg"
rm "<output>.tmp.png"icon-white.svg# PNG (transparent background, explicit height, width auto-computed ≈824px)
rsvg-convert -h 1024 "<input>.svg" -o "<output>.png"
# JPG (dark background)
rsvg-convert -h 1024 "<input>.svg" -o "<output>.tmp.png"
magick "<output>.tmp.png" -background "#14161f" -flatten "<output>.jpg"
rm "<output>.tmp.png"--format ico--favicon--favicon--format ico.icofavicon.icorsvg-convertmagickrsvg-convertmagick -extent.icomagick# Render PNGs preserving aspect ratio (height-constrained), then center on square canvas
for size in 16 32 48; do
rsvg-convert -h "$size" "<input>.svg" -o "<output>-${size}-raw.tmp.png"
magick "<output>-${size}-raw.tmp.png" -background transparent -gravity center -extent "${size}x${size}" "<output>-${size}.tmp.png"
rm "<output>-${size}-raw.tmp.png"
done
# Combine into multi-resolution ICO
magick "<output>-16.tmp.png" "<output>-32.tmp.png" "<output>-48.tmp.png" "<output>.ico"
# Clean up
rm "<output>-16.tmp.png" "<output>-32.tmp.png" "<output>-48.tmp.png"sablier-icon-<color-name>.icofavicon.icosablier-icon-<color-name>.<ext>primarysablier-icon-primary.svgicon.svgsecondarysablier-icon-secondary.svg#003dff#00b7ff#e52e52sablier-icon-e52e52.svgwhitesablier-icon-white.svg#00d395 --flatsablier-icon-00d395.svgfill="#00d395"red --format jpgsablier-icon-red.svgsablier-icon-red.jpgsecondary --format pngsablier-icon-secondary.svgsablier-icon-secondary.pngprimary --format icosablier-icon-primary.svgsablier-icon-primary.icoprimary --favicon--format ico