plantuml について
構造が正しく、意味が明確で読みやすい PlantUML 図を作成するスキルです。図の種類を選び、ソースを生成して構造を確認できます。
主な機能
- 01UML、C4、アーキテクチャ、ワークフロー図の選択
- 02PlantUML ソースブロックの生成
- 03エイリアスや境界による図の整理
- 04構文構造と要素参照の確認
- 05根拠のない要素や関係の追加を回避
活用シーン
- 01実行時のやり取りや静的な型のモデル化
- 02論理アーキテクチャや配置構成の記述
- 03ライフサイクル、ワークフロー、ユースケース図の作成
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ full-stack-skills/ document-skills --skill plantumlインストール後、Claude Code で/plantumlを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
LICENSE.txtagents/openai.yamlexamples/activity.mdarchimate.mdc4.mdchronology.mdclass.mdcomponent.mddeployment.mdditaa.mdebnf.mder-chen.mder.mdgantt.mdie.mdjson-yaml.mdmath.mdmindmap.mdnetwork.mdobject.mdregex.mdsalt.mdsdl.mdsequence.mdstate.mdtiming.mduse-case.mdwbs.md詳細
PlantUML 図
意味が明確で読みやすいレイアウトの、構造的に有効な PlantUML を作成します。
ルーティング
- UML、C4、エンタープライズアーキテクチャ、または
.puml出力には PlantUML を選択します。 - Markdown に直接埋め込む軽量な図には、
mermaidスキルを選択します。次のコマンドでインストールします:npx skills add full-stack-skills/document-skills --skill mermaid。 - ホストされた環境での編集、または ProcessOn 形式での出力が明示的に必要な場合は、
processon-diagram-generatorスキルを選択します。次のコマンドでインストールします:npx skills add full-stack-skills/document-skills --skill processon-diagram-generator。 - 指定された記法や出力形式でレンダラーがすでに決まっている場合は、ユーザーに選択を求めないでください。
ワークフロー
- リクエストとソースから、アクター、コンポーネント、型、状態、メッセージ、またはデプロイノードを抽出します。
- 図の種類と、意図する抽象度を選択します。
- 開始ディレクティブと終了ディレクティブが一致する、完全なソースブロックを生成します。
- 長い名前にはエイリアスを使用し、意味のあるグループ化にはパッケージや境界を使用します。
- 利用可能であればローカルの PlantUML レンダラーで検証し、それ以外の場合は構造を確認します。
- リクエストされた場合、または既存のドキュメントツリーに統合する場合にのみ、
.pumlファイルを保存します。
図の選択
| 必要な内容 | 主な構文 |
|---|---|
| 実行時のインタラクション | sequence、participant、actor |
| 静的な型モデル | class、interface、関係 |
| 論理アーキテクチャ | component、package、interface |
| 実行時のトポロジー | node、cloud、database、artifact |
| ライフサイクル | state、[*] |
| ワークフロー | start、if、while、fork、stop |
| ユーザーの目標 | actor、usecase |
| C4 モデル | C4 include と Person、System、Container、Component |
構文の詳細が必要な場合は、examples/ 内の該当するファイルのみを読み込みます。
作成ルール
- 標準的な UML 図は
@startumlと@endumlで囲みます。 - エイリアスは一度だけ定義し、一貫して再利用します。
- 理解の向上につながる場合は、関係に目的やプロトコルを記載します。
- 1 つの図が煩雑になる場合は、論理アーキテクチャとデプロイトポロジーを分けます。
- C4 の各レベルは分けてください。明確な理由がない限り、コンテキスト、コンテナー、コンポーネントの詳細を混在させないでください。
- ユーザーがネットワーク依存のレンダリングを許容する場合を除き、リモートの
!include依存関係は避けます。 - 根拠のないコンポーネント、プロトコル、多重度、呼び出しを作り出さないでください。
出力
インラインでの提供:
```plantuml
@startuml
actor User
participant API
database DB
User -> API: Submit request
API -> DB: Persist data
DB --> API: Result
API --> User: Response
@enduml
```
ファイルでの提供:リポジトリに別の規約が定められていない限り、docs/diagrams/<descriptive-name>.puml を優先します。確認なしに上書きしないでください。
検証チェックリスト
- 開始ディレクティブと終了ディレクティブが一致している。
- エイリアスと参照される要素が定義されている。
- 関係の方向と多重度が意図どおりである。
- C4 の include が、対象のレンダリング環境で利用できる。
- ソースに秘密情報やマシン固有のパスが含まれていない。
- レンダラーが利用可能な場合、ローカルでのレンダリングが成功する。
コメント
Markdown 対応