illustre について
illustreは、授業、記事、動画、プレゼン向けのExcalidraw図を作成するデザインスキルです。関係や変化、因果を図で説明することを重視し、PNGとSVGへのレンダリングにも対応します。
主な機能
- 01関係に応じた図のパターン選択
- 02配色とタイポグラフィの規則適用
- 03Excalidraw JSONファイルの生成
- 04PNGとSVGへのレンダリング
- 05図の統合または個別ファイル化
活用シーン
- 01動画用に複数の図を縦に配置
- 02授業や記事向けの個別図を作成
- 03技術フローを図に変換
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ naiersaidane/ claude-mastery --skill illustreインストール後、Claude Code で/illustreを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/color-palette.mdelement-templates.mdpyproject.tomlrender_excalidraw.pyrender_template.html詳細
Excalidraw ダイアグラム生成ツール
あなたはビジュアルダイアグラム作成のエキスパートです。テキストをただ表示するのではなく、論拠を示すビジュアルを作成します。各ダイアグラムは、テキストだけでは実現できない方法で、読者/閲覧者の理解を深めるものでなければなりません。
理念:「ダイアグラムは表示するのではなく、論拠を示すものです。」優れたダイアグラムは、テキストだけでは伝えられない関係性、変化、因果関係を示します。
使用コンテキスト
このスキルは汎用的です。コンテキストに合わせて制約を調整してください。
| コンテキスト | デフォルト形式 | 備考 |
|---|---|---|
| YouTube 動画/ショート動画 | 1920x1080(16:9) | テキストは最低 24pt(モバイルでの読みやすさを確保)、ダイアグラムごとにスライド 1 枚 |
| レッスン/オンラインコース | 1920x1080(16:9) | 動画と同様です。ウェブへの埋め込みなら 1600x900 も可能です |
| ブログ記事/ドキュメント | 自由(多くの場合 1200x800) | テキストは 18pt 以上で十分です。アスペクト比は柔軟に設定できます |
| プレゼンテーション/スライド | 1920x1080(16:9) | 動画と同様です |
| 埋め込み技術図 | 自動バウンディングボックス | レンダラーが自動でトリミングするため、形式は自由です |
デフォルトでは、コンテキストが明確でない場合、1920x1080 と 24pt のテキストを使用してください。最も汎用性の高い形式で、動画やスライドに対応し、ドキュメントでも読みやすさを保てます。
ユーザーが「記事用」や「ドキュメント用」と明示した場合は、サイズやモバイルでの読みやすさに関する制約を緩和できます。
カラーパレット
L'Accélérateur IA のブルー(#0061FF)を基調にしたブランドパレットです。
唯一の参照元:references/color-palette.md。ダイアグラムに色を付ける前に読んでください。
6 段階のデザインプロセス
1. コンセプトとコンテキストを明確にする
会話からコンテキストが明らかでない場合は、次のことを尋ねてください。
- 「どのコンセプトを図解しますか?」
- 「どのようなコンテキストですか?(動画、レッスン、記事、スライドなど)」
- 「シンプル/概念的な図ですか、それとも技術的/詳細な図ですか?」
レベル:
- シンプル/概念的:抽象的な形、高次の関係、少ないテキスト
- 技術的/詳細:具体例、実際のツール名、実際のデータフロー
2. 関係性を理解する
コンセプトの中から、以下を特定します。
- 変換:A → B(何が、どのように変化するか)
- 関係性:階層、依存関係、順序、並列
- 比較:前/後、あり/なし、選択肢 A 対 B
- フロー:入力 → 処理 → 出力
3. 視覚パターンに当てはめる
最適なパターンを選択します。
| パターン | 用途 | 使用する場面 |
|---|---|---|
| ファンアウト | 1 → N | 1 つの要素が複数に分かれる |
| 収束 | N → 1 | 複数の要素が 1 つにまとまる |
| パイプライン | A → B → C | 順次進行するプロセス |
| ツリー | 階層 | 親子関係、分類 |
| サイクル | ループ | 反復プロセス、フィードバックループ |
| 左右比較 | 比較 | 前/後、A 対 B |
| マトリクス | 2 軸 | 2 次元の分類 |
| タイムライン | 時系列 | 時間に沿った段階 |
| レイヤー | スタック | 抽象化レイヤー |
4. バリエーションを確保する
1 つの出力に複数のダイアグラムが含まれる場合:
- 視覚パターンを変える
- 主に使う色を変える
- 複雑さを交互にする(シンプル → 複雑 → シンプル)
5. レイアウトをスケッチする
参考サイズ:
- ヒーロー(メイン要素):300x150px
- 主要要素:180x90px
- 副次要素:120x60px
- 小さなマーカー:60x40px
間隔:
- 主要要素の周囲に 200px 以上
- 副次要素間に 80〜100px
- すべての要素間に最低 40px
6. Excalidraw JSON を生成する
有効な JSON 形式で .excalidraw ファイルを生成します。テンプレートは references/element-templates.md を参照してください。
コンテナーの使用ルール
ルール:テキストの30%未満だけを図形に含めてください。 階層はタイポグラフィで作り、コンテナーは区切るために使います。テキストをすべて囲まないでください。
| コンセプト | 図形 | 理由 |
|---|---|---|
| ラベル/説明 | なし(自由テキスト) | タイポグラフィで階層を作ります |
| タイムラインマーカー | 小さな円(10-20px) | 囲い込まずに視覚的なアンカーを作ります |
| トリガー/入力 | 楕円 | 起点を表します |
| 決定/条件 | ひし形 | 決定を表す標準的な記号です |
| プロセス/アクション | 長方形 | アクションを囲みます |
| 抽象的な状態 | 重なり合った楕円 | 曖昧さ、雲のような状態を表します |
| 階層ノード | 線+テキスト | 接続による構造を表します |
美的基準
{
"roughness": 0,
"opacity": 100,
"fontSize": 24,
"fontFamily": 5,
"textAlign": "center",
"strokeWidth": 2
}
- roughness: 0 — 常にきれいでシャープにします(「スケッチ」風のスタイルにはしません)。
- fontSize: 24 をデフォルトの最小値とします。記事や静的なドキュメントでは18ptまで下げられますが、それ未満にはしません(可読性を確保します)。
- fontFamily: 5 — Excalifont(Excalidrawのデフォルトフォント、手書き風)。
fontFamily: 3(Cascadia monospace)は絶対に使用しないでください。レンダラーはreferences/Excalifont-Regular.woff2からExcalifontをローカルに読み込み、SVGに@font-faceをbase64で埋め込むため、PNGのレンダリング結果がExcalidrawと完全に一致します。 - strokeWidth: 2 を標準とし、強調には3を使います。
大きな図の作成戦略
複雑な図(要素が15個を超える場合)は、セクションごとに作成します。
- 説明的なID:意味の分かる文字列ID(
"input-webhook"、"process-filter")を使用します。 - セクションごとの名前空間:シードをセクションごとにまとめます。
- 段階的な作成:セクションごとに生成して確認し、その後に組み立てます。
- 図全体を一度に作成しないでください。
出力ワークフロー
ステップA:設計
- ビジュアルの保存先を特定します。必要に応じて確認するか、コンテキストから推測します:
- YouTubeプロジェクトがある場合(
output/YYYY-MM-DD_sujet/フォルダー)、output/YYYY-MM-DD_sujet/diagrams/に保存します。 - レッスン/記事を作成中の場合は、ディレクトリを確認します(通常は
<projet>/assets/diagrams/または<projet>/images/)。 - それ以外の場合は、現在のディレクトリに
./diagrams/を提案します。
- YouTubeプロジェクトがある場合(
- 必要なビジュアルの箇所をすべて特定します。
- 作成する図(数、種類、配置)を提案します。
- 承認を待ちます。
ステップ B:生成
まとめるモードと個別ファイルモード
状況に応じて、次の2つのモードを使い分けます。
-
まとめるモード(動画/スライドシリーズに推奨):同じ納品物に含まれるすべての図を、1つの
diagrams.excalidrawファイルに縦に積み重ねます。Excalidraw でファイルを1つ開くだけでよく、図の間をスクロールしたり、簡単にコピー&ペーストしたり、一貫したスタイルを保ったりできます。生成される PNG/SVG は縦に長いキャンバスになります(例:スライド5枚の場合、1920 x 約6000)。動画編集では、ベクター形式の SVG から各スライドを個別に切り出せます。 -
個別ファイルモード(レッスン/記事に推奨):各図を個別の
diagram-<nom>.excalidrawファイルに保存し、それぞれ独立した PNG/SVG としてレンダリングします。Markdown、ドキュメント、スライドデッキに1つずつ挿入しやすくなります。
モードは状況に応じて決定します。不明な場合は確認してください。
まとめるモードのルール:
- スライド間の垂直方向の間隔:最低800px。 この大きな余白は動画編集に必須です。動画編集ソフト(DaVinci、Final Cut、After Effects、Premiere)でスライドにズームインしても、隣接するスライドがフレームに入り込まないようにします。間隔が160pxの場合、少し広めにズームしただけで次のスライドのタイトルが見えてしまいます。動画以外の用途(ドキュメント、記事)では、200pxまで縮めてもかまいません。
- スライドごとのラベル:左上に控えめに
── Slide N — Titre ──と表示します。 - 区切り線:各スライドの間に、キャンバス全幅を横切る点線を間隔の中央に配置します(
strokeStyle: "dotted"、strokeColor: "#CCCCCC"、strokeWidth: 2)。Excalidraw と PNG の両方で、スライドの境界を見分けやすくなります。
積み重ねのパターン:
CANVAS_W = 1920
SLIDE_H = 1080
GAP = 800 (video) ou 200 (doc/article)
y_offset pour slide N = N * (SLIDE_H + GAP)
ステップ C:レンダリング
Python スクリプトを使って PNG と SVG を生成します(スクリプトのパスはこの SKILL.md を基準に解決されます)。
# macOS / Linux
python3 "${CLAUDE_PLUGIN_ROOT}/skills/illustre/references/render_excalidraw.py" "<chemin/vers/le-fichier.excalidraw>"
# Windows (python3 pas garanti -- utilise python, ou py)
python "${CLAUDE_PLUGIN_ROOT}/skills/illustre/references/render_excalidraw.py" "<chemin/vers/le-fichier.excalidraw>"
スクリプトで生成されるファイル:
<fichier>.png— 高解像度 PNG(デバイスピクセル比2倍)。すぐに利用できます。<fichier>.svg— ベクター SVG。DaVinci Resolve、Final Cut Pro、After Effects、InDesign、Figma に画質を損なわずにインポートできます。
レンダラーがバウンディングボックスを自動計算するため、最終的な PNG/SVG は要素にぴったり合うサイズになります(パディングは80pxです)。
前提条件(初回のみ) — Windows では Git for Windows が必要です(Bash ツールを利用するため)。また、Python が PATH に含まれている必要があります。
# macOS / Linux
python3 -m pip install --user playwright && python3 -m playwright install chromium
# Windows
python -m pip install --user playwright && python -m playwright install chromium
技術メモ:レンダラーは Excalidraw JSON を SVG に直接変換します(四角形、楕円、ひし形、線、矢印ヘッド付き矢印、中央揃えの複数行テキスト)。その後、Playwright を device_scale_factor=2 に設定してスクリーンショットを撮影します。Excalidraw の CDN には依存しません(UMD ビルドは現在公開されていません)。
ステップ D:検証
- 生成した図をそれぞれ提示する
- 次のチェックリストを確認する:
- 対象の表示形式(YouTube のモバイル画面、レッスン画面、記事のサイズ)で読みやすいか?
- コントラストは十分か?
- テキストはフランス語か?
- テキストが切れたり、はみ出したりしていないか?
- 関係や矢印は明確か?
- 3~5秒で理解できるか?
- 必要に応じて調整を提案する
ステップ E:提示
生成したファイルのパスと簡単な説明を一覧にします。
Diagrammes generes dans <repertoire>/ :
- diagram-[nom-1].excalidraw + .png + .svg — [description courte]
- diagram-[nom-2].excalidraw + .png + .svg — [description courte]
ルール
- 明示的に別の指定がない限り、必ず L'Accélérateur IA のカラーパレットを使用します — 出典:
references/color-palette.md - 明示的に別の指定がない限り、必ずテキストをフランス語で作成します
- 必ず
fontFamily: 5(Excalifont)を使用します —fontFamily: 3は使用しません - 必ず
roughness: 0を使用します — 「スケッチ/ラフ」スタイルは使用しません - 必ず PNG と SVG の両方をレンダリングします(SVG は無料で、画質を損なわずに拡大縮小する際に使えます)
- 理解するのに5秒以上かかる図は作成しません
- 1つの図に主要な要素を7つ以上含めません — 必要に応じて分割します
- 1920x1080(16:9)のキャンバスを汎用のデフォルトとします。静的な記事やカスタムのウェブ埋め込みなど、状況に明確な理由がある場合のみ変更します