← ClaudeAtlas

mermaid-renderlisted

Render .mmd or .md files to SVG images
aksh-3141/claude-toolshed · ★ 0 · AI & Automation · score 64
Install: claude install-skill aksh-3141/claude-toolshed
# /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 1. **Resolve Plugin Path**: ```bash find "$HOME/.claude/plugins/cache" -type d -name "mermaid" -path "*/skills/mermaid" 2>/dev/null | head -1 ``` If empty, run fallback: ```bash find "$HOME" -maxdepth 8 -type d -name "mermaid" -path "*/skills/mermaid" 2>/dev/null | head -1 ``` Use the returned path as `PLUGIN_DIR`. 2. **Ensure Dependencies**: ```bash bash "$PLUGIN_DIR/scripts/ensure-deps.sh" ``` If `.claude/mermaid.json` does **not** exist, display a one-time nudge before continuing: > First time using the mermaid plugin? Run `/mermaid-config` to pick a theme and output settings. Using defaults for now (zinc-light, `./diagrams`). 3. **Read Config**: If `.claude/mermaid.json` exists, read: - `theme` (default: zinc-light) - `output_directory` (default: ./diagrams) - `output_format` (default: svg) **Resolve output path:** - If `output_directory` is `"same"` AND an input file path is known: `OUTPUT_DIR=$(dirname {input_file})` - If `output_directory` is `"same"` AND no argument was provided: `OUTPUT_DIR=./diagrams` - Otherwise: `OUTPUT_DIR=<output_directory from config>` 4. **Determine Input**: - `.mmd` file → render directly - `.md` file → extract Mermaid blocks first: `node "$PLUGIN_DIR/scripts/extract_merma