CLI リファレンス
Shumoku コマンドラインツールの使い方
shumoku render
YAML/JSON ファイルからダイアグラムをレンダリングします。
npx @shumoku/cli render <input> [options]オプション
| オプション | 説明 |
|---|---|
-f, --format <type> | 出力形式: svg, html, png(デフォルト: 拡張子から自動判定) |
-o, --output <file> | 出力ファイル名(デフォルト: output.svg) |
--scale <number> | PNG のスケール係数(デフォルト: 2) |
-h, --help | ヘルプを表示 |
-v, --version | バージョンを表示 |
使用例
# SVG 出力
npx @shumoku/cli render network.yaml -o diagram.svg
# インタラクティブ HTML 出力
npx @shumoku/cli render network.yaml -f html -o diagram.html
# PNG 出力
npx @shumoku/cli render network.yaml -f png -o diagram.png
# 高解像度 PNG 出力
npx @shumoku/cli render network.yaml -f png --scale 3 -o diagram.png
# JSON から生成
npx @shumoku/cli render topology.json -o diagram.svg
# stdin から読み込み
cat network.yaml | npx @shumoku/cli render - -o diagram.svg入力形式
拡張子で自動判定されます:
| 拡張子 | 形式 |
|---|---|
.yaml, .yml | YAML |
.json | JSON |
- (stdin) | YAML として解釈 |
出力形式
| 形式 | 説明 | 用途 |
|---|---|---|
svg | ベクター画像 | ドキュメント埋め込み、編集 |
html | インタラクティブ HTML | ブラウザで閲覧、パン/ズーム |
png | ラスター画像 | プレゼン、画像として共有 |
PNG オプション
PNG 出力時の追加オプション:
# 高解像度出力(デフォルト: scale=2)
npx @shumoku/cli render network.yaml -f png --scale 3 -o diagram.pngTypeScript からの場合(Node.js のみ):
import { renderGraphToPng } from '@shumoku/renderer-png'
const output = await renderGraphToPng(graph, {
scale: 3 // 解像度スケール
})統合ワークフロー
他システムから JSON を生成して CLI でレンダリング:
# 1. 独自スクリプトで Shumoku 形式の JSON を生成
node generate-from-api.js > network.json
# 2. JSON からダイアグラム生成
npx @shumoku/cli render network.json -f html -o diagram.html詳細は カスタム連携 を参照してください。