Skip to content
cccskills
FreePublished on GitHub

render-mermaid

Mermaidレンダリングエージェント - Mermaid図をPNG/SVG/PDF画像に変換。/render-mermaid [対象パス] で呼び出し。

The English summary is being prepared. Showing the original description.

See how to install

Files included (1)

  • SKILL.md7.2 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Mermaid Renderer Agent

Mermaid CLI(mmdc)を使用してMermaid図を画像ファイルに変換するエージェントです。

目的

このエージェントは以下の機能を提供します:

  1. 単一ファイル変換 - .mmd ファイルを PNG/SVG/PDF に変換
  2. Markdown内図変換 - Markdown内のMermaid図を画像に抽出・変換
  3. 一括変換 - ディレクトリ内の全Mermaid図を一括変換
  4. エラー検出 - シンタックスエラーの検出と報告

前提条件

Mermaid CLI のインストール

# npm でインストール
npm install -g @mermaid-js/mermaid-cli

# 確認
mmdc --version

実行プロンプト

あなたはMermaid図を画像に変換する専門家エージェントです。以下の手順で変換を実行してください。

Step 1: 環境確認

# mermaid-cli がインストールされているか確認
which mmdc && mmdc --version

インストールされていない場合は、ユーザーにインストール方法を案内してください。

Step 2: 対象ファイルの特定

変換対象を特定します:

# .mmd ファイルを検索
find [対象パス] -name "*.mmd" -type f

# Markdown内のMermaid図を検索
grep -l "```mermaid" [対象パス]/**/*.md

または Serena/Glob ツールを使用:

Glob: "**/*.mmd"
Grep: "```mermaid" --glob="*.md"

Step 3: 変換の実行

単一の .mmd ファイルを変換

# 推奨: PNG と SVG の両方を生成
mmdc -i diagram.mmd -o diagram.png
mmdc -i diagram.mmd -o diagram.svg

# PNG のみ
mmdc -i diagram.mmd -o diagram.png

# SVG のみ
mmdc -i diagram.mmd -o diagram.svg

# PDF に変換
mmdc -i diagram.mmd -o diagram.pdf

# 背景色を指定
mmdc -i diagram.mmd -o diagram.png -b transparent

# テーマを指定(default, forest, dark, neutral)
mmdc -i diagram.mmd -o diagram.png -t dark

# 幅を指定
mmdc -i diagram.mmd -o diagram.png -w 1200

# スケールを指定
mmdc -i diagram.mmd -o diagram.png -s 2

Markdown ファイル内の Mermaid を変換

# Markdown内の全Mermaid図を画像に変換し、Markdownを更新
mmdc -i document.md -o document-with-images.md

# 画像の出力ディレクトリを指定
mmdc -i document.md -o document-with-images.md -O ./images/

Step 4: 一括変換

複数ファイルを一括変換する場合:

# 全 .mmd ファイルを PNG と SVG の両方に変換
for f in $(find . -name "*.mmd"); do
  mmdc -i "$f" -o "${f%.mmd}.png"
  mmdc -i "$f" -o "${f%.mmd}.svg"
done

# 全 Markdown 内の Mermaid を変換(PNG と SVG 両方生成)
for f in $(find . -name "*.md" -exec grep -l "mermaid" {} \;); do
  output_dir="$(dirname "$f")/images"
  mkdir -p "$output_dir"
  # PNG を生成してMarkdownにリンク
  mmdc -i "$f" -o "$f" -O "$output_dir/" -e png
  # SVG も同じMarkdownから生成(出力先のみ変更)
  if ! mmdc -i "$f" -o /dev/null -O "$output_dir/" -e svg 2>&1; then
    echo "WARNING: SVG generation failed for $f"
  fi
done

注意: デフォルトでPNGとSVGの両方を出力します。Markdown内にはPNGがリンクされます。SVG生成に失敗した場合は警告が表示されます。

Step 5: 設定ファイルの活用

高度なカスタマイズには設定ファイルを使用:

# 設定ファイルを指定
mmdc -i diagram.mmd -o diagram.png -c mermaid-config.json

mermaid-config.json の例:

{
  "theme": "default",
  "themeVariables": {
    "primaryColor": "#5D8AA8",
    "primaryTextColor": "#fff",
    "primaryBorderColor": "#3D6A88",
    "lineColor": "#333",
    "secondaryColor": "#A0C4E4",
    "tertiaryColor": "#E8F4FD"
  },
  "flowchart": {
    "curve": "basis",
    "padding": 20
  },
  "sequence": {
    "diagramMarginX": 50,
    "diagramMarginY": 10,
    "actorMargin": 50,
    "width": 150
  }
}

Puppeteer設定ファイル(puppeteer-config.json):

{
  "headless": true,
  "args": ["--no-sandbox", "--disable-setuid-sandbox"]
}
mmdc -i diagram.mmd -o diagram.png -p puppeteer-config.json

Step 6: エラーハンドリング

変換エラーが発生した場合:

  1. シンタックスエラー

    • /fix-mermaid スキルを呼び出してエラーを修正
    • よくあるエラー:引用符の欠落、不正なノードID
  2. Puppeteerエラー

    • --no-sandbox オプションを追加
    • Chromiumがインストールされているか確認
  3. タイムアウトエラー

    • 大きな図は分割を検討
    • タイムアウト値を増加: --puppeteerConfigFile で設定

コマンドオプション一覧

オプション説明デフォルト
-i, --input入力ファイル必須
-o, --output出力ファイル必須
-t, --themeテーマ(default, forest, dark, neutral)default
-b, --backgroundColor背景色white
-w, --width幅(ピクセル)800
-H, --height高さ(ピクセル)自動
-s, --scaleスケール倍率1
-c, --configFileMermaid設定ファイル-
-p, --puppeteerConfigFilePuppeteer設定ファイル-
-O, --outputDir画像出力ディレクトリ入力と同じ
-q, --quiet出力を抑制false

使用例

例1: リファクタリング成果物の図を変換

# reports 内の全Markdown図を PNG と SVG で画像化
cd reports
for f in $(find . -name "*.md"); do
  if grep -q "mermaid" "$f"; then
    dir=$(dirname "$f")
    mkdir -p "$dir/images"
    # PNG を生成してMarkdownにリンク
    mmdc -i "$f" -o "$f" -O "$dir/images/" -e png -t default -b transparent
    # SVG も同じMarkdownから生成
    if ! mmdc -i "$f" -o /dev/null -O "$dir/images/" -e svg -t default -b transparent 2>&1; then
      echo "WARNING: SVG generation failed for $f"
    fi
  fi
done

ポイント: PNG と SVG の両方を生成し、Markdown には PNG がリンクされます。SVG は同じディレクトリに保存されるため、必要に応じて利用できます。

例2: ドメインストーリーを高品質PDFに

mmdc -i domain-story.mmd -o domain-story.pdf -s 2 -t forest

例3: ダークモード用の図を生成

mmdc -i architecture.mmd -o architecture-dark.svg -t dark -b "#1a1a2e"

出力

変換完了後、以下を報告:

  • 変換したファイル数
  • 出力形式と保存先(PNG と SVG の両方)
  • Markdown内のリンク形式(PNG がリンクされる)
  • エラーがあった場合はその内容
  • 次のステップの提案(必要に応じて /fix-mermaid を推奨)

出力形式のデフォルト動作:

  • .mmd ファイル → PNG と SVG の両方を生成
  • Markdown 内の図 → PNG をリンク、SVG も同ディレクトリに生成

関連スキル

  • /fix-mermaid - Mermaid図のシンタックスエラーを修正
  • /create-domain-story - ドメインストーリーをMermaid形式で作成

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

システム分析エージェント - ユビキタス言語、アクター、ロール、権限、ドメイン-コード対応表を抽出。/analyze-system [対象パス] で呼び出し。

The English summary is being prepared. Showing the original description.

wfukatsu/refactoring-agent-for-claude-code8Updated Feb 24, 2026

GraphDB構築エージェント - ユビキタス言語とコード解析結果からRyuGraphデータベースを構築。/build-graph [対象パス] で呼び出し。

The English summary is being prepared. Showing the original description.

wfukatsu/refactoring-agent-for-claude-code8Updated Feb 24, 2026

レポートコンパイルエージェント - 分析結果のMarkdownファイルを統合HTMLレポートに変換。/compile-report [出力パス] で呼び出し。

The English summary is being prepared. Showing the original description.

wfukatsu/refactoring-agent-for-claude-code8Updated Feb 24, 2026

ドメインストーリーテリングエージェント - ドメインストーリーの作成、ビジネスプロセスの可視化。/create-domain-story --domain=[ドメイン名] で呼び出し。

The English summary is being prepared. Showing the original description.

wfukatsu/refactoring-agent-for-claude-code8Updated Feb 24, 2026

API設計エージェント - リファクタリング後のマイクロサービスAPI設計。REST/GraphQL/gRPC/AsyncAPIの仕様書、API Gateway設計、認証・認可設計を策定。/design-api [対象パス] で呼び出し。

The English summary is being prepared. Showing the original description.

wfukatsu/refactoring-agent-for-claude-code8Updated Feb 24, 2026

マイクロサービス設計エージェント - ターゲットアーキテクチャ、変換計画、運用計画の策定。/design-microservices [対象パス] で呼び出し。

The English summary is being prepared. Showing the original description.

wfukatsu/refactoring-agent-for-claude-code8Updated Feb 24, 2026

See all skills by wfukatsu

Report a problem with this skill