xiaohongshu
xiaohongshu
chrome-extension-icons
Search and generate icons for Chrome browser extensions. Automatically downloads SVG icons from Iconify (275,000+ free icons), converts them to required PNG sizes (16x16, 32x32, 48x48, 128x128), and updates manifest.json configuration. Use when the user mentions "extension icon", "browser extensi...
Full skill instructions
Generate professional icons for Chrome browser extensions in seconds using Iconify's vast library of 275,000+ free open-source icons.
When the user requests an extension icon, follow these steps:
Extract key information:
./icons)./manifest.json)Run the search command with the extracted keyword:
node ~/.claude/skills/chrome-extension-icons/scripts/generate-icons.js search "<keyword>"
Expected output:
Present to user:
Example presentation:
I found a great calendar icon for your extension:
Best match: mdi:calendar
Preview: https://icon-sets.iconify.design/mdi/icons/calendar.html
I'll generate this icon in 4 sizes (16x16, 32x32, 48x48, 128x128) for your Chrome extension.
If you'd prefer a different style, I also have 4 alternatives saved that you can choose from.
Shall I proceed with this icon?
Once confirmed (or auto-proceed if user said "yes" to any icon), run:
node ~/.claude/skills/chrome-extension-icons/scripts/generate-icons.js generate \
--icon "<icon-id>" \
--output "./icons" \
--manifest "./manifest.json"
With custom color (if user specified a color):
node ~/.claude/skills/chrome-extension-icons/scripts/generate-icons.js generate \
--icon "<icon-id>" \
--output "./icons" \
--manifest "./manifest.json" \
--color "#ba3329"
After generation, check the output:
ls -lh ./icons/
Verify 4 PNG files are created:
icon16.pngicon32.pngicon48.pngicon128.pngCheck manifest.json was updated:
cat ./manifest.json | grep -A 6 '"icons"'
Provide a summary:
✅ Icon generation complete!
Generated files:
- icons/icon16.png (1.2 KB)
- icons/icon32.png (2.4 KB)
- icons/icon48.png (3.8 KB)
- icons/icon128.png (9.5 KB)
Your manifest.json has been updated:
{
"icons": {
"16": "icons/icon16.png",
"32": "icons/icon32.png",
"48": "icons/icon48.png",
"128": "icons/icon128.png"
}
}
📌 Alternative icons (if you want to try a different style):
1. mdi:calendar-month - https://icon-sets.iconify.design/mdi/icons/calendar-month.html
2. fa:calendar - https://icon-sets.iconify.design/fa/icons/calendar.html
3. heroicons:calendar - https://icon-sets.iconify.design/heroicons/icons/calendar.html
4. carbon:calendar - https://icon-sets.iconify.design/carbon/icons/calendar.html
Just let me know if you'd like to try any of these alternatives!
When user requests a specific color (e.g., "make it red", "use my brand color #ba3329"):
node ~/.claude/skills/chrome-extension-icons/scripts/generate-icons.js generate \
--icon "mdi:home" \
--color "#ba3329" \
--output "./icons"
Note: Color customization works best with single-color SVG icons. Complex gradients may not render as expected.
When user has their own logo or SVG file:
First check if the file exists:
ls -lh <svg-file-path>
Convert it:
node ~/.claude/skills/chrome-extension-icons/scripts/generate-icons.js convert \
--input "<svg-file-path>" \
--output "./icons" \
--manifest "./manifest.json"
Optionally apply color:
node ~/.claude/skills/chrome-extension-icons/scripts/generate-icons.js convert \
--input "./logo.svg" \
--output "./icons" \
--color "#ff0000"
When user needs icons for multiple projects:
Create a configuration file icons-config.json:
{
"projects": [
{
"name": "Project A",
"icon": "mdi:calendar",
"output": "./project-a/icons",
"manifest": "./project-a/manifest.json"
},
{
"name": "Project B",
"icon": "mdi:music",
"output": "./project-b/icons",
"manifest": "./project-b/manifest.json",
"color": "#ff0000"
},
{
"name": "Project C",
"input": "./project-c/logo.svg",
"output": "./project-c/icons",
"manifest": "./project-c/manifest.json"
}
]
}
Run batch generation:
node ~/.claude/skills/chrome-extension-icons/scripts/generate-icons.js batch \
--config icons-config.json
Report summary showing success/failure for each project
Always inform users about Chrome's icon requirements:
Format: PNG only (SVG is not supported in manifest.json)
Transparency: Supported and recommended for non-square logos
File size: Aim for < 100 KB total for all 4 files
The script automatically creates or updates the icons field:
{
"manifest_version": 3,
"name": "My Extension",
"version": "1.0.0",
"icons": {
"16": "icons/icon16.png",
"32": "icons/icon32.png",
"48": "icons/icon48.png",
"128": "icons/icon128.png"
}
}
If action or browser_action exists, default_icon is also updated:
{
"action": {
"default_icon": {
"16": "icons/icon16.png",
"32": "icons/icon32.png",
"48": "icons/icon48.png",
"128": "icons/icon128.png"
}
}
}
If the script fails with Sharp installation error:
macOS:
brew install vips
cd ~/.claude/skills/chrome-extension-icons && npm install
Ubuntu/Debian:
sudo apt-get install libvips-dev
cd ~/.claude/skills/chrome-extension-icons && npm install
Windows:
npm install --global windows-build-tools
cd ~/.claude/skills/chrome-extension-icons && npm install
Inform the user of these steps if installation fails.
The script has built-in retry logic (3 attempts with exponential backoff). If Iconify API fails:
If HTTP 429 error occurs, the script automatically waits and retries. Inform user:
The icon API is experiencing high traffic. Waiting 60 seconds before retry...
If an icon doesn't render well or user doesn't like it:
ls to confirm files were created successfullySee examples/usage.md for detailed conversation examples and edge cases.
| Issue | Solution |
|---|---|
| Sharp won't install | Install libvips: brew install vips (macOS) |
| API timeout | Retry after a moment, check connection |
| Icon looks bad | Try a different icon from alternatives |
| Wrong colors | Use --color flag for single-color icons |
| File too large | Complex SVGs may create large PNGs, try simpler icon |
| Manifest not updating | Check file permissions, verify path is correct |
Remember: This skill automates a tedious process. Be helpful, present clear options, and make the experience smooth for the user. Always show preview links so users know what they're getting before generation.
xiaohongshu
technical spec
product ux expert
database patterns
Conduct multi-agent task orchestration and workflow coordination.
Initialize project with Conductor artifacts (product definition,
Expert in web animations, transitions, and motion design using Framer Motion and CSS
Creates Mermaid and ASCII diagrams for flowcharts, architecture, ERDs, state machines, mindmaps, and more. Use when user mentions diagram, flowchart, mermaid, ASCII diagram, text diagram, terminal diagram, visualize, C4, mindmap, architecture diagram, sequence diagram, ERD, or needs visual docume...
PostgreSQL bindings for H3 hexagonal grid system. Use when working with H3 cells in Postgres, including spatial indexing, geometry/geography integration, and raster analysis.
Context-Driven Development skill for projects using Conductor. Use this skill when you detect a `conductor/` directory in the project, when working on tasks defined in a `plan.md` file, or when the user asks about tracks, specs, or plans. Automatically applies TDD workflow, tracks task completion...
Display project status, active tracks, and next actions
Official Stakpak application containerization standard operating procedure, a step-by-step guidline to properly dockerize applications. This is a rule book curated by the Stakpak Team.
Generate, edit, and beat-sync AI video with leading models in one workspace.
The world's fastest calendar for remote work
Transform Your Design with AI Designer by ImgCreator.ai
Revolutionizing Video Production with AI-Powered Creativity
Extend an image past the frame and let AI fill the new aspect ratio.
Discover your celebrity doppelgänger with StarByFace!
ChainClarity explains 700+ crypto whitepapers in plain English, with layered summaries, comparisons, research tools, alerts, and a $4.99 Pro plan.
Opus.ai: Revolutionize Your Web Experience