CLI ハーネス - Draw.io は何をしますか?
Draw.io 用 CLI ハーネス — コマンドラインから図を作成、編集、エクスポートします。
インストール
この CLI は cli-anything-drawio パッケージの一部としてインストールされます:
pip install cli-anything-drawio
前提条件:
- Python 3.10+
- システムに drawio がインストールされている必要があります
使用方法
基本コマンド
# ヘルプを表示
cli-anything-drawio --help
# 対話型 REPL モードを開始
cli-anything-drawio
# 新しいプロジェクトを作成
cli-anything-drawio project new -o project.json
# JSON 出力で実行(エージェント消費用)
cli-anything-drawio --json project info -p project.json
REPL モード
サブコマンドなしで呼び出すと、CLI は対話型 REPL セッションに入ります:
cli-anything-drawio
# タブ補完と履歴を使用して対話的にコマンドを入力
コマンドグループ
Project
プロジェクト管理: new、open、save、info。
| コマンド | 説明 |
|---|---|
new | 新しい空白の図を作成 |
open | 既存の .drawio プロジェクトファイルを開く |
save | 現在のプロジェクトを保存 |
info | 詳細なプロジェクト情報を表示 |
xml | 現在のプロジェクトの生の XML を出力 |
presets | 利用可能なページサイズプリセットを一覧表示 |
Shape
図形操作: add、remove、move、resize、style。
| コマンド | 説明 |
|---|---|
add | 図に図形を追加 |
remove | ID で図形を削除 |
list | ページ上のすべての図形を一覧表示 |
label | 図形のラベルテキストを更新 |
move | 図形を新しい座標に移動 |
resize | 図形のサイズを変更 |
style | 図形にスタイルプロパティを設定 |
info | 図形の詳細情報を表示 |
types | 利用可能な図形タイプをすべて一覧表示 |
Connect
コネクタ操作: add、remove、style。
| コマンド | 説明 |
|---|---|
add | 2つの図形間にコネクタを追加 |
remove | ID でコネクタを削除 |
label | コネクタのラベルを更新 |
style | コネクタにスタイルプロパティを設定 |
list | ページ上のすべてのコネクタを一覧表示 |
styles | 利用可能なエッジスタイルを一覧表示 |
Page
ページ操作: add、remove、rename、list。
| コマンド | 説明 |
|---|---|
add | 新しいページを追加 |
remove | インデックスでページを削除 |
rename | ページ名を変更 |
list | すべてのページを一覧表示 |
Export
エクスポート操作: PNG、PDF、SVG にレンダリング。
| コマンド | 説明 |
|---|---|
render | 図をファイルにエクスポート |
formats | 利用可能なエクスポート形式を一覧表示 |
Session
セッション管理: status、undo、redo。
| コマンド | 説明 |
|---|---|
status | 現在のセッションステータスを表示 |
undo | 最後の操作を元に戻す |
redo | 最後に元に戻した操作をやり直す |
save-state | セッション状態をディスクに保存 |
list | 保存されたすべてのセッションを一覧表示 |
例
新しいプロジェクトを作成
新しい drawio プロジェクトファイルを作成します。
cli-anything-drawio project new -o myproject.json
# またはプログラムで使用するための JSON 出力
cli-anything-drawio --json project new -o myproject.json
対話型 REPL セッション
元に戻す/やり直し機能を備えた対話型セッションを開始します。
cli-anything-drawio
# 対話的にコマンドを入力
# 利用可能なコマンドを表示するには 'help' を使用
# 履歴ナビゲーションには 'undo' と 'redo' を使用
プロジェクトのエクスポート
プロジェクトを最終出力形式にエクスポートします。
cli-anything-drawio --project myproject.json export render output.pdf --overwrite
状態管理
CLI は以下のセッション状態を管理します:
- 元に戻す/やり直し: 最大 50 レベルの履歴
- プロジェクトの永続化: プロジェクト状態を JSON として保存/読み込み
- セッショントラッキング: 変更と修正を追跡
出力形式
すべてのコマンドは二重出力モードをサポートします:
- 人間可読(デフォルト): テーブル、色、書式付きテキスト
- 機械可読(
--jsonフラグ): エージェント消費用の構造化 JSON
# 人間向け出力
cli-anything-drawio project info -p project.json
# エージェント向け JSON 出力
cli-anything-drawio --json project info -p project.json
AI エージェント向け
この CLI をプログラムで使用する場合:
- 常に
--jsonフラグを使用 して解析可能な出力を取得 - リターンコードを確認 - 0 は成功、0 以外はエラー
- 失敗時のエラーメッセージは stderr を解析
- すべてのファイル操作には絶対パスを使用
- エクスポート操作後、出力が存在することを確認
詳細情報
- 完全なドキュメント: パッケージ内の README.md を参照
- テストカバレッジ: パッケージ内の TEST.md を参照
- 方法論: cli-anything-plugin 内の HARNESS.md を参照
バージョン
1.0.0