mermaid-tools▌
daymade/claude-code-skills · updated Apr 8, 2026
This skill enables extraction of Mermaid diagrams from markdown files and generation of high-quality PNG images. The skill bundles all necessary scripts (extract-and-generate.sh, extract_diagrams.py, and puppeteer-config.json) in the scripts/ directory for portability and reliability.
Mermaid Tools
Overview
This skill enables extraction of Mermaid diagrams from markdown files and generation of high-quality PNG images. The skill bundles all necessary scripts (extract-and-generate.sh, extract_diagrams.py, and puppeteer-config.json) in the scripts/ directory for portability and reliability.
Core Workflow
Standard Diagram Extraction and Generation
Extract Mermaid diagrams from a markdown file and generate PNG images using the bundled extract-and-generate.sh script:
cd ~/.claude/skills/mermaid-tools/scripts
./extract-and-generate.sh "<markdown_file>" "<output_directory>"
Parameters:
<markdown_file>: Path to the markdown file containing Mermaid diagrams<output_directory>: (Optional) Directory for output files. Defaults to<markdown_file_directory>/diagrams
Example:
cd ~/.claude/skills/mermaid-tools/scripts
./extract-and-generate.sh "/path/to/document.md" "/path/to/output"
What the Script Does
- Extracts all Mermaid code blocks from the markdown file
- Numbers them sequentially (01, 02, 03, etc.) in order of appearance
- Generates
.mmdfiles for each diagram - Creates high-resolution PNG images with smart sizing
- Validates all generated PNG files
Output Files
For each diagram, the script generates:
01-diagram-name.mmd- Extracted Mermaid code01-diagram-name.png- High-resolution PNG image
The numbering ensures diagrams maintain their order from the source document.
Advanced Usage
Custom Dimensions and Scaling
Override default dimensions using environment variables:
cd ~/.claude/skills/mermaid-tools/scripts
MERMAID_WIDTH=1600 MERMAID_HEIGHT=1200 ./extract-and-generate.sh "<markdown_file>" "<output_directory>"
Available variables:
MERMAID_WIDTH(default: 1200) - Base width in pixelsMERMAID_HEIGHT(default: 800) - Base height in pixelsMERMAID_SCALE(default: 2) - Scale factor for high-resolution output
High-Resolution Output for Presentations
cd ~/.claude/skills/mermaid-tools/scripts
MERMAID_WIDTH=2400 MERMAID_HEIGHT=1800 MERMAID_SCALE=4 ./extract-and-generate.sh "<markdown_file>" "<output_directory>"
Print-Quality Output
cd ~/.claude/skills/mermaid-tools/scripts
MERMAID_SCALE=5 ./extract-and-generate.sh "<markdown_file>" "<output_directory>"
Smart Sizing Feature
The script automatically adjusts dimensions based on diagram type (detected from filename):
- Timeline/Gantt: 2400×400 (wide and short)
- Architecture/System/Caching: 2400×1600 (large and detailed)
- Monitoring/Workflow/Sequence/API: 2400×800 (wide for process flows)
- Default: 1200×800 (standard size)
Context-aware naming in the extraction process helps trigger appropriate smart sizing.
Important Principles
Use Bundled Scripts
CRITICAL: Use the bundled extract-and-generate.sh script from this skill's scripts/ directory. All necessary dependencies are bundled together.
Change to Script Directory
Run the script from its own directory to properly locate dependencies (extract_diagrams.py and puppeteer-config.json):
cd ~/.claude/skills/mermaid-tools/scripts
./extract-and-generate.sh "<markdown_file>" "<output_directory>"
Running the script without changing to the scripts directory first may fail due to missing dependencies.
Prerequisites Verification
Before running the script, verify dependencies are installed:
- mermaid-cli:
mmdc --version - Google Chrome:
google-chrome-stable --version - Python 3:
python3 --version
If any are missing, consult references/setup_and_troubleshooting.md for installation instructions.
Troubleshooting
For detailed troubleshooting guidance, refer to references/setup_and_troubleshooting.md, which covers:
- Browser launch failures
- Permission issues
- No diagrams found
- Python extraction failures
- Output quality issues
- Diagram-specific sizing problems
Quick fixes for common issues:
Permission denied:
chmod +x ~/.claude/skills/mermaid-tools/scripts/extract-and-generate.sh
Low quality output:
MERMAID_SCALE=3 ./extract-and-generate.sh "<markdown_file>" "<output_directory>"
Chrome/Puppeteer errors: Verify all WSL2 dependencies are installed (see references for full list).
Bundled Resources
scripts/
This skill bundles all necessary scripts for Mermaid diagram generation:
- extract-and-generate.sh - Main script that orchestrates extraction and PNG generation
- extract_diagrams.py - Python script for extracting Mermaid code blocks from markdown
- puppeteer-config.json - Chrome/Puppeteer configuration for WSL2 environment
All scripts must be run from the scripts/ directory to properly locate dependencies.
references/setup_and_troubleshooting.md
Comprehensive reference documentation including:
- Complete prerequisite installation instructions
- Detailed environment variable reference
- Extensive troubleshooting guide
- WSL2-specific Chrome dependency setup
- Validation procedures
Load this reference when dealing with setup issues, installation problems, or advanced customization needs.
Discussion
Product Hunt–style comments (not star reviews)- No comments yet — start the thread.
Ratings
4.7★★★★★52 reviews- ★★★★★Sakura Bansal· Dec 20, 2024
I recommend mermaid-tools for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.
- ★★★★★Evelyn Agarwal· Dec 16, 2024
We added mermaid-tools from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.
- ★★★★★James Ramirez· Dec 16, 2024
Solid pick for teams standardizing on skills: mermaid-tools is focused, and the summary matches what you get after install.
- ★★★★★Yusuf Rahman· Dec 12, 2024
Keeps context tight: mermaid-tools is the kind of skill you can hand to a new teammate without a long onboarding doc.
- ★★★★★Hiroshi Torres· Dec 12, 2024
Registry listing for mermaid-tools matched our evaluation — installs cleanly and behaves as described in the markdown.
- ★★★★★Soo Rao· Nov 11, 2024
mermaid-tools fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
- ★★★★★Ren Shah· Nov 7, 2024
mermaid-tools has been reliable in day-to-day use. Documentation quality is above average for community skills.
- ★★★★★Hiroshi Martinez· Nov 3, 2024
mermaid-tools reduced setup friction for our internal harness; good balance of opinion and flexibility.
- ★★★★★Evelyn Patel· Oct 26, 2024
mermaid-tools fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
- ★★★★★Evelyn Jackson· Oct 22, 2024
mermaid-tools is among the better-maintained entries we tried; worth keeping pinned for repeat workflows.
showing 1-10 of 52