Awesome-openclaw-skills sfsymbol-generator
Generate an Xcode SF Symbol asset catalog .symbolset from an SVG. Use when you need to add a custom SF Symbol (build-time) by creating the symbolset folder, Contents.json, and SVG file.
install
source · Clone the upstream repo
git clone https://github.com/sundial-org/awesome-openclaw-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/sundial-org/awesome-openclaw-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/sfsymbol-generator" ~/.claude/skills/sundial-org-awesome-openclaw-skills-sfsymbol-generator && rm -rf "$T"
OpenClaw · Install into ~/.openclaw/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/sundial-org/awesome-openclaw-skills "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/skills/sfsymbol-generator" ~/.openclaw/skills/sundial-org-awesome-openclaw-skills-sfsymbol-generator && rm -rf "$T"
manifest:
skills/sfsymbol-generator/SKILL.mdsource content
SF Symbol Generator
Usage
You can override the default asset catalog location with
SFSYMBOL_ASSETS_DIR.
Raw symbolset (no template injection)
./scripts/generate.sh <symbol-name> <svg-path> [assets-dir]
: Full symbol name (e.g.,symbol-name
,custom.logo
).brand.icon.fill
: Path to the source SVG file.svg-path
(optional): Path toassets-dir
(defaults toAssets.xcassets/Symbols
orAssets.xcassets/Symbols
).SFSYMBOL_ASSETS_DIR
Template-based symbolset (recommended)
./scripts/generate-from-template.js <symbol-name> <svg-path> [template-svg] [assets-dir]
(optional): SF Symbols template SVG to inject into (defaults to the firsttemplate-svg
SVG found in.symbolset
, otherwise uses the bundled skill template).Assets.xcassets/Symbols
Example
./scripts/generate-from-template.js pi.logo /Users/admin/Desktop/pi-logo.svg
Requirements
- SVG must include a
.viewBox - Use path-based shapes (paths are required; rects are supported and converted, but other shapes should be converted to paths).
- Prefer filled shapes (no strokes) to avoid thin artifacts.
Workflow
- Validates the SVG path and viewBox.
- Computes path bounds and centers within the SF Symbols template margins.
- Injects the paths into the SF Symbols template (Ultralight/Regular/Black).
- Creates
inside the asset catalog Symbols folder.<symbol-name>.symbolset - Writes a matching
.Contents.json