Mermaid render
Skill aksh-3141/claude-toolshed/plugins/mermaid/skills/mermaid-render
Provide and install pre-packaged plugins to extend Claude Code with new skills directly within your Claude environment.
npx -y skills add aksh-3141/claude-toolshed --skill mermaid-renderAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Render .mmd or .md files to SVG images
SKILL.md
2.9 KB, as published. Nobody here has run it
/mermaid-render
User request: "$ARGUMENTS"
Task
Render Mermaid diagrams from an existing .mmd file or a .md file with Mermaid blocks to SVG image files.
Process
-
Resolve Plugin Path:
find "$HOME/.claude/plugins/cache" -type d -name "mermaid" -path "*/skills/mermaid" 2>/dev/null | head -1If empty, run fallback:
find "$HOME" -maxdepth 8 -type d -name "mermaid" -path "*/skills/mermaid" 2>/dev/null | head -1Use the returned path as
PLUGIN_DIR. -
Ensure Dependencies:
bash "$PLUGIN_DIR/scripts/ensure-deps.sh"If
.claude/mermaid.jsondoes not exist, display a one-time nudge before continuing:First time using the mermaid plugin? Run
/mermaid-configto pick a theme and output settings. Using defaults for now (zinc-light,./diagrams). -
Read Config: If
.claude/mermaid.jsonexists, read:theme(default: zinc-light)output_directory(default: ./diagrams)output_format(default: svg)
Resolve output path:
- If
output_directoryis"same"AND an input file path is known:OUTPUT_DIR=$(dirname {input_file}) - If
output_directoryis"same"AND no argument was provided:OUTPUT_DIR=./diagrams - Otherwise:
OUTPUT_DIR=<output_directory from config>
-
Determine Input:
.mmdfile → render directly.mdfile → extract Mermaid blocks first:node "$PLUGIN_DIR/scripts/extract_mermaid.js" {file}- Directory → find all
.mmdfiles:find {dir} -name "*.mmd" -not -path "*/node_modules/*" - No argument → ask: "Which file or directory should I render?"
-
Render: Run for each input file.
resilient_diagram.jsrenders SVG via beautiful-mermaid and maps errors to troubleshooting.md.Theme handling:
-
If
theme == "custom"andthemeVariablesis present in config:node "$PLUGIN_DIR/scripts/resilient_diagram.js" {input_file} --output-dir $OUTPUT_DIR --custom-theme '{"bg":"#...","fg":"#..."}'Pass the serialized
themeVariablesJSON as the--custom-themevalue. -
If
theme == "custom"butthemeVariablesis absent from config: render without custom theme and display a note:Custom theme configured but no themeVariables found — run
/mermaid-config→ option 6 to define colors. -
Otherwise:
node "$PLUGIN_DIR/scripts/resilient_diagram.js" {input_file} --output-dir $OUTPUT_DIR --theme {theme}
-
-
Report:
- List all output files generated with full paths
- If rendering failed: "Run
/mermaid-config→ health check to diagnose missing dependencies."
Output
Rendered 3 diagrams:
✅ diagrams/sequence-auth.svg
✅ diagrams/er-users.svg
✅ diagrams/architecture.svg