/install markdown-diagram-renderer
Markdown Diagram Renderer
Automatically identify architecture/flowchart code blocks in Markdown documents, render them as images, and replace them.
Features
- Smart Identification: Automatically identify Mermaid, Graphviz, and PlantUML diagrams without specific language tags.
- Multi-backend Rendering: Supports local rendering and online API fallback.
- Base64 Inline: Images are inlined into Markdown as Base64 encoding, version control friendly.
- Source Preservation: Optionally keep the original diagram code as comments.
Supported Diagram Types
| Diagram Type | Language Identifier | Local Renderer | Online Renderer |
|---|---|---|---|
| Mermaid | mermaid, mmd |
mmdc CLI | mermaid.ink |
| Graphviz | graphviz, dot, gv |
graphviz Python | - |
| PlantUML | plantuml, puml |
Java jar | plantuml.com |
Getting Started
Before first use, please install Python dependencies:
# Install dependencies
pip install -r {baseDir}/script/requirements.txt
Optional dependencies (install as needed):
# Mermaid local rendering (recommended)
npm install -g @mermaid-js/mermaid-cli
# Graphviz (for Graphviz diagrams)
# macOS: brew install graphviz
# Ubuntu: sudo apt-get install graphviz
# PlantUML local rendering
# 1. Install Java
# 2. Download plantuml.jar
# 3. Set environment variable: export PLANTUML_JAR=/path/to/plantuml.jar
Note: If local rendering tools are not installed, the system will automatically use online APIs for rendering (requires internet connection).
⚠️ Privacy Warning: Online rendering sends diagram source code to third-party services:
- Mermaid →
mermaid.ink- PlantUML →
plantuml.comDo not include sensitive information (e.g., passwords, keys, internal architecture details) in diagrams. It is recommended to install local rendering tools to avoid data leakage.
Usage
CLI Command Line
# Basic usage
python3 {baseDir}/script/main.py document.md
# Specify output file
python3 {baseDir}/script/main.py document.md -o output.md
# Set confidence threshold
python3 {baseDir}/script/main.py document.md --threshold 0.7
# Output SVG format
python3 {baseDir}/script/main.py document.md --format svg
# Do not preserve source code
python3 {baseDir}/script/main.py document.md --no-preserve
# Detailed logs
python3 {baseDir}/script/main.py document.md -v
Calling as a Python Module
import sys
sys.path.insert(0, '{baseDir}/script')
from main import create_skill
# Create SKILL instance
config = {
'confidence_threshold': 0.6,
'output_format': 'png',
'preserve_source': True,
}
skill = create_skill(config)
# Execute
result = skill.execute(
input_file='document.md',
output_file='output.md'
)
print(result)
Configuration Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
confidence_threshold |
float | 0.6 | Diagram identification confidence threshold (0-1) |
output_format |
string | png | Output image format (png/svg) |
preserve_source |
bool | True | Whether to preserve original diagram code |
Identification Strategy
Uses a multi-stage filter system:
- Language Tag Check: Prioritizes identifying
mermaid,graphviz,plantuml, etc. - First Line Keyword Matching: Checks for typical declarations at the beginning of code blocks.
- Keyword Density Analysis: Counts the frequency of diagram-specific keywords.
- Structural Feature Analysis: Detects structural characteristics of diagrams.
Output Example
Before processing:
```mermaid
graph TD
A[Start] --> B[Process]
B --> C[End]
```
After processing:

\x3C!-- Original diagram code -->
\x3C!--
```mermaid
graph TD
A[Start] --> B[Process]
B --> C[End]
-->
## File Structure
{baseDir}/ ├── SKILL.md # This file ├── script/ │ ├── main.py # Main entry point │ ├── core.py # Core logic │ └── requirements.txt # Python dependencies └── README.md # Detailed documentation
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install markdown-diagram-renderer - After installation, invoke the skill by name or use
/markdown-diagram-renderer - Provide required inputs per the skill's parameter spec and get structured output
What is Markdown Diagram Renderer?
Automatically identify diagram code blocks (Mermaid/Graphviz/PlantUML) in Markdown documents, render them as images, and replace them. It is an AI Agent Skill for Claude Code / OpenClaw, with 234 downloads so far.
How do I install Markdown Diagram Renderer?
Run "/install markdown-diagram-renderer" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is Markdown Diagram Renderer free?
Yes, Markdown Diagram Renderer is completely free, licensed under MIT-0. You can download, install and use it at no cost.
Which platforms does Markdown Diagram Renderer support?
Markdown Diagram Renderer is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created Markdown Diagram Renderer?
It is built and maintained by fireium (@fireium); the current version is v1.0.3.