ai-sdk-docs
This skill should be used when working with Vercel AI SDK, AI Gateway, streamText, generateText, generateObject, streamObject,…
Workaround for Claude Code filtering BMP PUA Unicode (U+E000-U+F8FF). Supplementary PUA Nerd Font icons like (U+F0000+, e.g. nf-md-github, nf-md-kubernetes, nf-md-battery) can be written directly. BMP PUA icons (Powerline, Font Awesome, Devicons) require placeholder
$ npx -y skills add malob/nix-config --skill icon-lookup --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/icon-lookupContext preview
The summary Claude sees to decide when to auto-load this skill.
Workaround for Claude Code filtering BMP PUA Unicode (U+E000-U+F8FF). Supplementary PUA Nerd Font icons like (U+F0000+, e.g. nf-md-github, nf-md-kubernetes, nf-md-battery) can be written directly. BMP PUA icons (Powerline, Font Awesome, Devicons) require placeholder
name: icon-lookup
description: >-
Workaround for Claude Code filtering BMP PUA Unicode (U+E000-U+F8FF). Supplementary PUA Nerd Font icons like (U+F0000+, e.g. nf-md-github, nf-md-kubernetes, nf-md-battery) can be written directly. BMP PUA icons (Powerline, Font Awesome, Devicons) require placeholder syntax like {{ U+E0A0 }} or {{ nf-fa-star }} (without spaces), which hooks auto-convert. Invoke when reading or writing Starship configs, tmux themes, shell prompts, or statuslines.Claude Code filters Unicode characters in the BMP Private Use Area (U+E000-U+F8FF), which includes most Nerd Font icons. This skill provides tools for working with these icons.
| Range | Status | Examples | | ------------------------------ | ------------------------------- | ------------------------------------------- | | U+E000-U+F8FF (BMP PUA) | **Filtered** - use placeholders | Powerline, Devicons, Font Awesome, Octicons | | U+F0000+ (Supplementary PUA-A) | Works directly | Material Design Icons (nf-md-*) |
**When reading files:** A PostToolUse hook automatically identifies all PUA characters, showing icon names, codepoints, and whether they're filtered.
**When writing files:** A PostToolUse hook automatically converts placeholder syntax to actual Unicode characters.
When writing icons in the filtered BMP PUA range, use placeholder syntax:
Search for icons by name:
python3 ${CLAUDE_PLUGIN_ROOT}/scripts/lookup-icon.py "<search query>"Example searches:
Identify a specific character:
# Direct argument (this is nf-md-battery, a Supplementary PUA icon)
python3 ${CLAUDE_PLUGIN_ROOT}/scripts/identify-icons.py -c ""
# From stdin
echo "" | python3 ${CLAUDE_PLUGIN_ROOT}/scripts/identify-icons.py -1. **Reading files** - Hook automatically shows icon info; use this to understand what icons are present 2. **Writing icons** - Search with lookup script, then use placeholder syntax for filtered icons 3. **Comparing icons** - Use identify script to check if two characters are the same icon 4. **Material Design Icons** (U+F0000+) can be written directly without placeholders
If placeholders weren't converted (e.g., hook didn't run):
${CLAUDE_PLUGIN_ROOT}/scripts/convert-placeholders.py /path/to/fileThis repo contains my Nix configs for macOS and Linux and by extension, configuration for most tools/programs I use, at least in the terminal.
This skill should be used when working with Vercel AI SDK, AI Gateway, streamText, generateText, generateObject, streamObject,…
This skill should be used when the user asks to "audit claude permissions", "audit permissions", "review local claude settings",…
This skill should be used when the user asks to "add a cask to homebrew", "create a homebrew cask", "add an app to homebrew",…