sablier-icon
npx skills add https://github.com/sablier-labs/agent-skills --skill sablier-icon
Agent 安装分布
Skill 文档
Recolor the Sablier icon SVG to a user-specified color and optionally export to PNG or JPG.
Source
The base icon is at assets/white-icon.svg (relative to this skill directory). It is a single-path SVG with
fill="white". To recolor, replace the fill attribute value with the target hex color.
Color Resolution
Resolve the user’s color input in this order:
- Brand color name â match against the Sablier palette below (case-insensitive, partial match OK)
- Raw hex â accept
#RRGGBBorRRGGBBdirectly - CSS color name â accept standard CSS named colors (e.g.
red,teal,cornflowerblue)
Sablier Brand Palette
Source: sablier-labs/branding
| Name | Hex | Notes |
|---|---|---|
| primary-start | #ff7300 |
Orange gradient start |
| primary-end | #ffb800 |
Orange gradient end |
| primary / orange | #ff9c00 |
Median orange (default primary) |
| secondary-start | #003dff |
Blue gradient start |
| secondary-end | #00b7ff |
Blue gradient end |
| secondary / blue | #0063ff |
Median blue (default secondary) |
| secondary-desaturated | #266cd9 |
Desaturated blue |
| dark | #14161f |
Darkest background |
| dark-100 | #1e212f |
App background |
| dark-300 | #2a2e41 |
Card borders |
| dark-400 | #30354a |
Input borders |
| gray-100 | #e1e4ea |
Body text |
| gray-400 | #8792ab |
Labels |
| red | #e52e52 |
Error / destructive |
| white | #ffffff |
Original icon color |
| black | #000000 |
Pure black (rarely used) |
When the user says “primary”, use #ff9c00. When they say “secondary”, use #0063ff.
SVG Generation
- Read
assets/white-icon.svg - Replace
fill="white"withfill="<resolved-hex>" - Write the result to the user’s working directory as
sablier-icon-<color-name>.svg
For filenames: use the brand alias when matched by name (e.g. primary), otherwise strip the # prefix and lowercase
the hex value (e.g. #E52E52 â e52e52). If the color cannot be resolved, ask the user to provide a valid hex code.
PNG / JPG Export
If the user passes --format png or --format jpg:
- Generate the recolored SVG first
- Verify
magickis available:command -v magick >/dev/null 2>&1 || { echo "Error: ImageMagick not found. Install with: brew install imagemagick"; exit 1; } - Use
magickto convert:
# PNG (transparent background, 1024px height)
magick -background none -density 300 "<input>.svg" -resize x1024 "<output>.png"
# JPG (dark background since JPG has no transparency, 1024px height)
magick -background "#14161f" -density 300 "<input>.svg" -resize x1024 -flatten "<output>.jpg"
The output filename follows the same sablier-icon-<color-name>.<ext> pattern.
Examples
primaryâsablier-icon-primary.svgwithfill="#ff9c00"secondary --format pngâsablier-icon-secondary.svg+sablier-icon-secondary.png#e52e52âsablier-icon-e52e52.svgwithfill="#e52e52"red --format jpgâsablier-icon-red.svg+sablier-icon-red.jpg