mcpField
M
markdown-mermaid-writing

markdown-mermaid-writing

github.com/crazymsnドキュメント2338 回インストール22 週間前に更新
リポジトリ

markdown-mermaid-writing について

markdown-mermaid-writing は、科学文書やプロジェクト文書で、構造や関係を表す標準形式として Mermaid を埋め込んだ Markdown を定めるスキルです。研究者や文書作成者向けに、テンプレート、スタイルガイド、多数の図表タイプの資料を提供します。

主な機能

  1. 01Markdown を標準のソース形式として使用
  2. 02Mermaid による構造や関係の表現
  3. 03文書タイプ別のテンプレート選択
  4. 0424 種類の図表ガイド
  5. 05図表のアクセシビリティとスタイル規則

活用シーン

  1. 01ワークフロー図を含む科学レポートの作成
  2. 02プロジェクト文書での構成図やデータフロー図の作成
  3. 03図表をテキストとして Git でバージョン管理

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/crazymsn/academic-skills --skill markdown-mermaid-writing

インストール後、Claude Code で/markdown-mermaid-writingを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

assets/examples/
example-research-report.md
references/
markdown_style_guide.md
mermaid_style_guide.md
references/diagrams/
architecture.md
block.md
c4.md
class.md
complex_examples.md
er.md
flowchart.md
gantt.md
git_graph.md
kanban.md
mindmap.md
packet.md
pie.md
quadrant.md
radar.md
requirement.md
sankey.md
sequence.md
state.md
timeline.md
treemap.md
user_journey.md
xy_chart.md
zenuml.md
templates/
decision_record.md
how_to_guide.md
issue.md

詳細

Markdown と Mermaid の作成

概要

このスキルでは、科学的なドキュメントを作成する際の標準を定め、その標準に沿って作成する方法を説明します。デフォルトかつ正式な形式は、Mermaid の図を埋め込んだ Markdown です。

基本的な考え方は、.md ファイル内の Mermaid 図で表した関係性は、どんな画像よりも価値があるということです。テキストなので、git で差分をきれいに確認できます。ビルド工程は不要です。GitHub、GitLab、Notion、VS Code などの Markdown ビューアーでネイティブに表示できます。同じ関係性を文章で説明するより、使用するトークンが少なくて済みます。また、いつでも後から洗練された画像に変換できますが、テキスト版は常に信頼できる唯一の情報源として残ります。

「レポートやファイルを、通常のテキストである .md 形式にすればするほどよいでしょう。Mermaid も、シンプルな『スクリプト言語』でありながら、テキストの一種です。こうすることで、その後のレンダリング、特に AI で生成する画像の作成に役立ちます(関係性を長い文章で説明するより、Mermaid を使えばトークンを減らせます)。さらに、Mermaid は Markdown と一緒にレンダリングできるため、人間にも AI にも、ほとんどどこでも簡単に利用できます。」

— Clayton Young (@borealBytes)、コミュニティでの議論、2026-02-19

このスキルを使う場面

次のような場合に、このスキルを使ってください。

  • あらゆる科学的ドキュメントを作成するとき — レポート、分析、論文、方法のセクション
  • あらゆるドキュメントを作成するとき — README、ハウツー、意思決定記録、プロジェクトドキュメント
  • あらゆる図を作成するとき — ワークフロー、データパイプライン、アーキテクチャ、タイムライン、関係性
  • バージョン管理する出力を作成するとき — git に入れるものはすべて Markdown にするべきです
  • ほかのあらゆるスキルと連携するとき — このスキルは、ほかのすべての出力を取り巻くドキュメント層を定義します
  • 「図を追加して」や「関係性を可視化して」と依頼されたとき — まずは必ず Mermaid を使ってください

構造図や関係図を作成する際に、Python の matplotlib、seaborn、または AI による画像生成から始めないでください。 これらはフェーズ 2 とフェーズ 3 であり、Mermaid では必要なものを表現できない場合にのみ使用します(例:実データを使った散布図、フォトリアリスティックな画像)。

🎨 ソース形式の考え方

テキストベースの図が優れている理由
重要な点Markdown 内の MermaidPython/AI 画像
Git の差分を読みやすい✅❌ バイナリデータ
再生成せずに編集できる✅❌
文章と比べてトークン効率がよい✅ 少ない❌ 多い
ビルド工程なしで表示できる✅❌ ホスティングが必要
ビジョン機能なしで AI が解析できる✅❌
GitHub/GitLab/Notion で動作する✅⚠️ ホスティング時のみ
アクセシビリティ(スクリーンリーダー)✅ accTitle/accDescr⚠️ 代替テキストが必要
後から画像に変換できる✅ いつでも— すでに画像
3 フェーズのワークフロー
flowchart LR
    accTitle: Three-Phase Documentation Workflow
    accDescr: Phase 1 Mermaid in markdown is always required and is the source of truth. Phases 2 and 3 are optional downstream conversions for polished output.

    p1["📄 Phase 1<br/>Mermaid in Markdown<br/>(ALWAYS — source of truth)"]
    p2["🐍 Phase 2<br/>Python Generated<br/>(optional — data charts)"]
    p3["🎨 Phase 3<br/>AI Generated Visuals<br/>(optional — polish)"]
    out["📊 Final Deliverable"]

    p1 --> out
    p1 -.->|"when needed"| p2
    p1 -.->|"when needed"| p3
    p2 --> out
    p3 --> out

    classDef required fill:#dbeafe,stroke:#2563eb,stroke-width:2px,color:#1e3a5f
    classDef optional fill:#fef9c3,stroke:#ca8a04,stroke-width:2px,color:#713f12
    classDef output fill:#dcfce7,stroke:#16a34a,stroke-width:2px,color:#14532d

    class p1 required
    class p2,p3 optional
    class out output

フェーズ 1 は必須です。 フェーズ 2 または 3 に進む場合でも、Mermaid のソースはコミットしたままにしてください。

Mermaid で表現できること

Mermaid は 24 種類の図に対応しています。科学的な関係のほとんどは、次のいずれかで表現できます。

ユースケース図の種類ファイル
実験のワークフロー/判断ロジックフローチャートreferences/diagrams/flowchart.md
サービス間の連携/API 呼び出し/メッセージングシーケンス図references/diagrams/sequence.md
データモデル/スキーマER 図references/diagrams/er.md
状態機械/ライフサイクル状態図references/diagrams/state.md
プロジェクトのタイムライン/ロードマップガントチャートreferences/diagrams/gantt.md
比率/構成円グラフreferences/diagrams/pie.md
システムアーキテクチャ(ズームレベル)C4references/diagrams/c4.md
概念の階層/ブレインストーミングマインドマップreferences/diagrams/mindmap.md
時系列のイベント/歴史タイムラインreferences/diagrams/timeline.md
クラス階層/型の関係クラス図references/diagrams/class.md
ユーザージャーニー/満足度マップユーザージャーニーreferences/diagrams/user_journey.md
2 軸での比較/優先順位付け象限図references/diagrams/quadrant.md
要件のトレーサビリティ要件図references/diagrams/requirement.md
フローの大きさ/リソースの分布サンキーダイアグラムreferences/diagrams/sankey.md
数値の傾向/棒グラフ+折れ線グラフXY チャートreferences/diagrams/xy_chart.md
コンポーネントのレイアウト/空間配置ブロック図references/diagrams/block.md
作業項目のステータス/タスク列カンバンreferences/diagrams/kanban.md
クラウドインフラ/サービスのトポロジーアーキテクチャ図references/diagrams/architecture.md
多次元の比較/スキルのレーダーチャートレーダーチャートreferences/diagrams/radar.md
階層的な比率/予算ツリーマップreferences/diagrams/treemap.md
バイナリプロトコル/データ形式パケット図references/diagrams/packet.md
Git のブランチ分岐/マージ戦略Git グラフreferences/diagrams/git_graph.md
コード風のシーケンス(プログラミング構文)ZenUMLreferences/diagrams/zenuml.md
複数の図を組み合わせるパターン複雑な例references/diagrams/complex_examples.md

💡 簡単なものではなく、適切な種類を選びましょう。 何でもフローチャートにするのは避けてください。 時系列のイベントにはフローチャートよりタイムラインが適しています。サービス間の連携には フローチャートよりシーケンス図が適しています。表に目を通して、内容に合うものを選びましょう。


🔧 基本的なワークフロー

ステップ 1:ドキュメントの種類を特定する

一から作成する前に、テンプレートがあるか確認してください。

ドキュメントの種類テンプレート
プルリクエストの記録templates/pull_request.md
Issue/バグ/機能リクエストtemplates/issue.md
スプリント/プロジェクトボードtemplates/kanban.md
アーキテクチャ決定記録(ADR)templates/decision_record.md
プレゼンテーション/説明資料templates/presentation.md
研究論文/分析templates/research_paper.md
プロジェクトドキュメントtemplates/project_documentation.md
ハウツー/チュートリアルtemplates/how_to_guide.md
ステータスレポートtemplates/status_report.md
ステップ 2:スタイルガイドを読む

.md ファイルを書く前に、references/markdown_style_guide.md を読んでください。

身につけておくべき主なルール:

  • ドキュメントごとに H1 は 1 つ — タイトルに使います。それ以上は使いません。
  • 絵文字は H2 見出しのみ — H2 ごとに 1 つ使い、H3/H4 には使いません。
  • すべてに出典を付ける — 外部情報に関する主張には、URL 全文を含む脚注 [^N] を付けます。
  • 太字は控えめに — 段落あたり最大 2~3 個の用語に限り、文全体を太字にしません。
  • </details> の後には必ず水平線を入れる — 必須です。
  • 比較、設定、構造化データには、文章より表を使う
  • 長い文章より図を使う — フロー、構造、関係を説明する場合は、Mermaid を追加します。
ステップ 3: 図の種類を選び、そのガイドを読む

Mermaid 図を作成する前に: references/mermaid_style_guide.md を読んでください。

次に、具体的な種類のファイル(例: references/diagrams/flowchart.md)を開き、実例、ヒント、コピー&ペースト用テンプレートを確認してください。

すべての図に必須のルール:

accTitle: Short Name 3-8 Words
accDescr: One or two sentences explaining what this diagram shows.
  • %%{init} ディレクティブは使わない — GitHub のダークモードが壊れます
  • インライン style は使わない — classDef のみを使用してください
  • ノードごとに絵文字は最大 1 つ — ラベルの先頭に配置してください
  • ノード ID は snake_case — ラベルと一致させてください
ステップ 4: ドキュメントを書く

テンプレートから始めてください。Markdown スタイルガイドを適用してください。図は関連するテキストのインラインに配置し、独立した「図」セクションには置かないでください。

ステップ 5: テキストとしてコミットする

コミットされるのは、Mermaid を埋め込んだ .md ファイルです。PNG や AI 画像も生成した場合、それらは補助的なものであり、Markdown がソースです。


⚠️ よくある落とし穴

レーダーチャートの構文(radar-beta)

誤り:

radar
title Example
x-axis ["A", "B", "C"]
"Series" : [1, 2, 3]

正しい:

radar-beta
title Example
axis a["A"], b["B"], c["C"]
curve series["Series"]{1, 2, 3}
max 3
  • radar ではなく radar-beta を使う(単独のキーワードは存在しません)
  • 次元を定義するには x-axis ではなく axis を使う
  • データ系列を定義するには、コロン付きの引用ラベルではなく curve を使う
  • accTitle/accDescr は使わない — radar-beta はアクセシビリティ注釈をサポートしていません。図の上に必ず説明的な斜体の段落を追加してください
XY チャートとレーダーの混同
図キーワード軸の構文データの構文
XY チャート(棒/線)xychart-betax-axis ["Label1", "Label2"]bar [10, 20] または line [10, 20]
レーダー(スパイダー/ウェブ)radar-betaaxis id["Label"]curve id["Label"]{10, 20}
サポートされている種類で accTitle/accDescr を忘れる

accTitle/accDescr をサポートする図の種類は一部だけです。サポートしていないものについては、コードブロックの直上に必ず説明的な斜体の段落を配置してください:

5 つのパフォーマンス次元にわたって 3 つの手法を比較するレーダーチャート。注: レーダーチャートは accTitle/accDescr をサポートしていません。

radar-beta
...

🔗 他のスキルとの統合

scientific-schematics との連携

scientific-schematics は AI を活用した出版品質の画像(PNG)を生成します。Mermaid 図を schematic のブリーフとして使用してください:

Workflow:
1. Create the concept as Mermaid in .md (this skill — Phase 1)
2. Describe the same concept to scientific-schematics for a polished PNG (Phase 3)
3. Commit both — the .md as source, the PNG as a supplementary figure
scientific-writing との連携

scientific-writing が原稿を生成するとき、すべての図や構造的な図表はこのスキルの標準に従うべきです。執筆スキルは文章と引用を扱い、このスキルは視覚的構造を扱います。

Workflow:
1. Use scientific-writing to draft the manuscript
2. For every figure that shows a workflow, architecture, or relationship:
   - Replace placeholder with a Mermaid diagram following this skill's guide
3. Use scientific-schematics only for figures that truly need photorealistic/complex rendering
literature-review との連携

文献レビューは、多くの関係データを含む要約を生成します。このスキルを使用して:

  • 文献の全体像のコンセプトマップ(マインドマップ)を作成する
  • 出版タイムライン(タイムラインまたはガント)を示す
  • 手法を比較する(クアドラントまたはレーダー)
  • 論文で説明されているデータフローを図式化する(シーケンスまたはフローチャート)
出力ドキュメントを生成するあらゆるスキルとの連携

あらゆるスキルからのドキュメントを完成させる前に、このスキルのチェックリストを適用してください:

  • ドキュメントはテンプレートを使用していますか? 使用している場合、正しいものから始めましたか?
  • すべての図は accTitle + accDescr を備えた Mermaid ですか?
  • %%{init} はなく、インライン style もなく、classDef のみですか?
  • すべての外部からの主張は [^N] で引用されていますか?
  • H1 は 1 つだけで、絵文字は H2 のみですか?
  • すべての </details> の後に水平線がありますか?

📚 リファレンス索引

スタイルガイド
ガイドパス行数内容
Markdown スタイルガイドreferences/markdown_style_guide.md約733見出し、書式、引用、表、Mermaid 統合、テンプレート、品質チェックリスト
Mermaid スタイルガイドreferences/mermaid_style_guide.md約458アクセシビリティ、絵文字セット、カラークラス、テーマ中立性、種類の選択、複雑さの階層
図の種類別ガイド(24 種類)

各ファイルには、実運用に適した例、この種類に特化したヒント、コピーして使えるテンプレートが含まれています。

references/diagrams/ — architecture、block、c4、class、complex_examples、er、flowchart、gantt、git_graph、kanban、mindmap、packet、pie、quadrant、radar、requirement、sankey、sequence、state、timeline、treemap、user_journey、xy_chart、zenuml

ドキュメントテンプレート(9 種類)

templates/ — decision_record、how_to_guide、issue、kanban、presentation、project_documentation、pull_request、research_paper、status_report

例

assets/examples/example-research-report.md — 見出し階層、複数の図の種類(フローチャート、シーケンス図、ガントチャート)、表、脚注形式の引用、折りたたみセクション、適用されるすべてのスタイルガイド規則を示した、完全な科学研究レポートです。


📝 クレジット

このスキルに含まれるすべてのスタイルガイド、図の種類別ガイド、ドキュメントテンプレートは、Apache-2.0 ライセンスに基づき、SuperiorByteWorks-LLC/agent-project リポジトリから移植されています。

このスキルは、academic-skills の一部として MIT License の下で配布されています。含まれる Apache-2.0 ライセンスのコンテンツは、帰属表示を保持すれば、下流での利用と互換性があります。帰属表示は、このスキル全体のファイルヘッダーに維持されています。


コメント