plantuml-syntax について
plantuml-syntaxは、PlantUMLでテキストから図を作成するための構文リファレンスです。UMLやその他の図を扱う開発者向けに、幅広い図の例と種類別の資料をまとめています。
主な機能
- 01UML図の構文リファレンス
- 02非UML図への対応
- 03C4アーキテクチャ図の資料
- 04図のスタイル設定ガイド
- 05複数のファイル拡張子の説明
活用シーン
- 01シーケンス図の作成
- 02クラスとドメインモデルの記述
- 03C4アーキテクチャ図の作成
- 04ガント図やER図の作成
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ melodic-software/ claude-code-plugins --skill plantuml-syntaxインストール後、Claude Code で/plantuml-syntaxを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/activity.mdc4.mdclass.mdsequence.mdspecial-diagrams.mdstate-component.mdstyling-setup.md詳細
PlantUML 構文リファレンス
概要
PlantUML は、テキストによる記述から図を作成する Java ベースのツールです。包括的な UML 図に加え、UML 以外の多くの種類の図もサポートしています。
主な利点:
- 最も包括的な図のサポート(15 種類以上)
- アイコン/スプライトを使用した成熟した C4 モデル統合
- 豊富なカスタマイズオプション
- 2009 年以来、実績を重ねてきたツール
要件:
- Java Runtime Environment(JRE)
- GraphViz(一部の図の種類で必要)
- または Docker を使用:
docker run -p 8080:8080 plantuml/plantuml-server
図の種類クイックリファレンス
UML 図
| 種類 | キーワード | 最適な用途 |
|---|---|---|
| シーケンス | @startuml | インタラクション、API フロー、プロトコル |
| ユースケース | @startuml | 要件、ユーザーストーリー |
| クラス | @startuml | OOP 設計、ドメインモデル |
| アクティビティ | @startuml | ワークフロー、プロセス |
| コンポーネント | @startuml | システム構造 |
| デプロイメント | @startuml | インフラストラクチャ、デプロイメント |
| 状態 | @startuml | 状態マシン |
UML 以外の図
| 種類 | キーワード | 最適な用途 |
|---|---|---|
| JSON | @startjson | JSON 構造の可視化 |
| YAML | @startyaml | YAML 構造の可視化 |
| ワイヤーフレーム | @startsalt | UI モックアップ |
| ガント | @startgantt | プロジェクトのタイムライン |
| マインドマップ | @startmindmap | 階層化されたアイデア |
| WBS | @startwbs | 作業分解 |
| ER | @startuml | データベーススキーマ |
| C4 | C4 include を含む @startuml | ソフトウェアアーキテクチャ |
基本構文
すべての PlantUML 図は、開始タグと終了タグで囲みます:
@startuml
' Your diagram code here
@enduml
コメント:
- 1 行コメント:
' This is a comment - ブロックコメント:
/' This is a block comment '/
タイトルとキャプション:
@startuml
title My Diagram Title
caption This is a caption
header Page Header
footer Page Footer
' Diagram content
@enduml
クイックリファレンスカード
シーケンス
@startuml
participant A
participant B
A -> B: Message
A <-- B: Response
@enduml
クラス
@startuml
class Name {
- private
+ public
+ method()
}
A <|-- B : extends
A *-- B : contains
@enduml
アクティビティ
@startuml
start
:Action;
if (condition?) then (yes)
:True path;
else (no)
:False path;
endif
stop
@enduml
状態
@startuml
[*] --> State1
State1 --> State2 : event
State2 --> [*]
@enduml
コンポーネント
@startuml
[Component1] --> [Component2]
database DB
Component2 --> DB
@enduml
リファレンス
詳しい構文や完全な例については、以下を参照してください:
| リファレンス | 内容 | 読み込むタイミング |
|---|---|---|
| sequence.md | 参加者、矢印、アクティベーション、グループ、注釈 | シーケンス図を作成するとき |
| class.md | クラス、可視性、関係、カーディナリティ | クラス図を作成するとき |
| activity.md | 条件、スイムレーン、フォーク/ジョイン | アクティビティ図を作成するとき |
| state-component.md | 状態マシン、コンポーネント、デプロイメント | 状態図/コンポーネント図を作成するとき |
| c4.md | C4 のコンテキスト図、コンテナ図、コンポーネント図 | C4 アーキテクチャ図を作成するとき |
| special-diagrams.md | ER、JSON、マインドマップ、ガント | UML 以外の図を作成するとき |
| styling-setup.md | Skinparams、テーマ、インストール | 図をカスタマイズするとき、または PlantUML をセットアップするとき |
ファイル拡張子
| 拡張子 | 説明 |
|---|---|
.puml | 標準の PlantUML ファイル |
.plantuml | 代替拡張子 |
.pu | 短縮拡張子 |
.iuml | Include ファイル |
テストシナリオ
シナリオ 1:シーケンス図の作成
クエリ:「ユーザー認証の PlantUML シーケンス図を作成してください」
**期待される結果:**スキルが有効になり、参加者、矢印、alt/else ブロックを含むシーケンス構文が提示されます
シナリオ 2:クラス図の作成
クエリ:「e コマースのドメインを表す PlantUML クラス図を生成してください」
**期待される結果:**スキルが有効になり、関係とカーディナリティを含むクラス構文が提示されます
シナリオ 3:C4 図の作成
クエリ:「PlantUML で C4 コンテナ図を作成してください」
**期待される結果:**スキルが有効になり、include と構文について c4.md のリファレンスが案内されます
**最終更新日:**2025-12-28 **PlantUML バージョン:**1.2024.6
バージョン履歴
- v1.1.0(2025-12-28):段階的開示に向けてリファクタリングし、内容を references/ に分割
- v1.0.0(2025-12-26):初回リリース
コメント
Markdown 対応