Community画像github.com

論文イラストレーション Image2

ローカルのCodexアプリサーバーブリッジを介してCodexネイティブの画像生成機能を用い、査読品質の学術イラストを生成します。元のスキルを変更せずにGPTイメージスタイルのレンダラーを求めるClaude Codeユーザー向けの、実験的な代替スキルです。

論文イラストレーション Image2 とは?

このスキルは、AIエージェント(主にClaude Code)が学術論文向けの高品質なラスターイラストを生成するための、マルチステージ反復ワークフローを提供します。Claudeがプランナー兼レビュアーとして機能し、ユーザーのリクエストを解析して詳細な画像プロンプトを作成します。その後、レイアウト最適化とスタイル検証のステップを経て、ローカルのCodexアプリサーバー上で動作するMCPブリッジ(`codex-image2`)を介してネイティブ画像生成を行います。生成された画像は厳格な視覚レビュー(1~10点のスコアリング)を受け、スコアが9未満の場合は、改善フィードバックを生成してレイアウト最適化からループバックします。最大5回の反復が可能で、最終的にCVPR/ICLR/NeurIPSなどのトップ会議に適したプロフェッショナルなスタイル(サンセリフフォント、控えめなカラーパレット、太くて見やすい矢印など)を満たす図を生成します。主にアーキテクチャ図、メソッド図、概念図の生成に優れており、統計プロットや写真写実的なシーンには適していません。

対応✓Claude Code✓Codex CLI~Cursor✓Antigravity
npx skills add https://github.com/erlingerwu0925/Skills/tree/HEAD/collections/02-autonomous-research/ARIS/skills/paper-illustration-image2

Installed? Explore more 画像 skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

論文イラストレーション Image2 は何をしますか?

各レビュアースロットの前に、選択可能なレビュアーに従ってください: 呼び出しを解決 → .aris/reviewer.json → Claude Code デフォルト (Codex MCP) を reviewer_route.py で正規のヘルパーリゾルバーを通して行い、このスロットの ティア、新しいコンテキスト、ソース/画像入力、決定論的ゲートを保持します。 以下の Codex の例/pin は backend=codex にのみ適用されます。他のルートは独自の 最初の呼び出し/応答契約を使用します。ルートと実際に返された ID を保存してください。 利用できない選択は REVIEW_UNAVAILABLE です。実際のファミリー/完了/スコープから受入を分類します。 呼び出し元のレビュアー/モデル/努力のオーバーライドをレビュアーを保持する子に転送します。 生成ワーカーは変更されません。

Claude をプランナー/レビュアーとして、ローカルの Codex アプリサーバー MCP ブリッジをラスターレンダラーとして使用して、査読品質の論文図を生成します。

中核設計思想

┌──────────────────────────────────────────────────────────────────────────┐
│                    マルチステージ反復ワークフロー                        │
├──────────────────────────────────────────────────────────────────────────┤
│                                                                          │
│   ユーザーリクエスト                                                     │
│       │                                                                  │
│       ▼                                                                  │
│   ┌─────────────┐                                                        │
│   │   Claude    │ ◄─── ステップ 1: リクエストを解析し、初期プロンプトを作成 │
│   │  (プランナー)│      - コンポーネント、ラベル、データフローを抽出       │
│   │             │      - 論文対応の図の概要を記述                        │
│   └──────┬──────┘                                                        │
│          │                                                               │
│          ▼                                                               │
│   ┌─────────────┐                                                        │
│   │Claude/Codex │ ◄─── ステップ 2: レイアウト記述を最適化                │
│   │   レイアウト │      - コンポーネントの配置を洗練                      │
│   │   レビュー   │      - スペーシングとグループ化を最適化                │
│   └──────┬──────┘                                                        │
│          │                                                               │
│          ▼                                                               │
│   ┌─────────────┐                                                        │
│   │Claude/Codex │ ◄─── ステップ 3: CVPR/NeurIPS スタイル検証             │
│   │   スタイル   │      - パレット、矢印、ラベル基準を確認                │
│   │   チェック   │      - レンダリング前にプロンプトを調整                │
│   └──────┬──────┘                                                        │
│          │                                                               │
│          ▼                                                               │
│   ┌─────────────┐                                                        │
│   │ codex-image2│ ◄─── ステップ 4: ブリッジを介したネイティブ画像生成    │
│   │ MCP ブリッジ │      - generate_start / generate_status を呼び出す     │
│   │ + アプリサーバー│  - ネイティブの imageGeneration 出力のみを受け入れる │
│   └──────┬──────┘                                                        │
│          │                                                               │
│          ▼                                                               │
│   ┌─────────────┐                                                        │
│   │   Claude    │ ◄─── ステップ 5: 厳格な視覚レビュー + スコア (1-10)    │
│   │  (レビュアー) │  - 論理、ラベル、矢印、美学を検証                     │
│   │   厳格!     │  - 不明瞭または論文準備ができていない図を却下          │
│   └──────┬──────┘                                                        │
│          │                                                               │
│          ▼                                                               │
│   スコア ≥ 9? ──YES──► 承認&出力                                        │
│          │                                                               │
│          NO                                                              │
│          │                                                               │
│          ▼                                                               │
│   具体的な改善フィードバックを生成 ──► ステップ 2 にループバック         │
│                                                                          │
└──────────────────────────────────────────────────────────────────────────┘

定数

  • RENDERER = codex-image2 — ローカルの Codex アプリサーバーを介して公開されるネイティブ画像生成ブリッジ

  • OPTIONAL_TEXT_CRITIC = mcp__codex__codex — レイアウト/スタイルチェック用のオプションのテキストのみのセカンドオピニオン

  • MAX_ITERATIONS = 5 — 最大改善ラウンド数

  • TARGET_SCORE = 9 — 最小許容スコア (1-10)

  • OUTPUT_DIR = figures/ai_generated/ — 出力ディレクトリ

  • TEXT_LANGUAGE = English — ユーザーが別途要求しない限り、デフォルトの図テキスト言語

  • NATIVE_IMAGE_REQUIREMENT = strict — ネイティブの imageGeneration 出力のみを受け入れ、シェル/Python フォールバックを拒否

  • IMAGE2_HELPER — 正規名 paper_illustration_image2.py、shared-references/integration-contract.md §2 (ポリシー A — スキルローカルゲート) に従って解決されます。フェーズ 3.2 (アーキテクチャ C) により、正規の実装は skills/paper-illustration-image2/scripts/ に移動しました。tools/paper_illustration_image2.py は os.execv シムとして残り、レガシーリゾルバーレイヤーが再インストールなしで動作し続けられるようにします。以下で解決します:

    # レイヤー 0: 自己完結型 (CC 1.0+ は $CLAUDE_SKILL_DIR を公開します)。
    IMAGE2_HELPER=""
    if [ -n "${CLAUDE_SKILL_DIR:-}" ] && [ -f "$CLAUDE_SKILL_DIR/scripts/paper_illustration_image2.py" ]; then
      IMAGE2_HELPER="$CLAUDE_SKILL_DIR/scripts/paper_illustration_image2.py"
    fi
    # レイヤー 1-4: tools/paper_illustration_image2.py のシムを介した共有ランタイムチェーン。
    if [ -z "$IMAGE2_HELPER" ]; then
      cd "$(git rev-parse --show-toplevel 2>/dev/null || pwd)" || exit 1
      if [ -z "${ARIS_REPO:-}" ] && [ -f .aris/installed-skills.txt ]; then
          ARIS_REPO=$(awk -F'\t' '$1=="repo_root"{print $2; exit}' .aris/installed-skills.txt 2>/dev/null) || true
      fi
      if [ -z "${ARIS_REPO:-}" ] && [ -f "$HOME/.aris/repo" ]; then
          ARIS_REPO=$(cat "$HOME/.aris/repo" 2>/dev/null) || true
      fi
      IMAGE2_HELPER=".aris/tools/paper_illustration_image2.py"
      [ -f "$IMAGE2_HELPER" ] || IMAGE2_HELPER="tools/paper_illustration_image2.py"
      [ -f "$IMAGE2_HELPER" ] || { [ -n "${ARIS_REPO:-}" ] && IMAGE2_HELPER="$ARIS_REPO/tools/paper_illustration_image2.py"; }
      [ -f "$IMAGE2_HELPER" ] || IMAGE2_HELPER=""
    fi
    [ -z "$IMAGE2_HELPER" ] && {
      echo "エラー: paper_illustration_image2.py を解決できませんでした (レイヤー 0: \$CLAUDE_SKILL_DIR/scripts/; レイヤー 1-4: .aris/tools/, tools/, \$ARIS_REPO/tools/, \$ARIS_REPO/tools/ (via ~/.aris/repo))." >&2
      echo "       /paper-illustration-image2 は続行できません。修正: bash tools/install_aris.sh または smart_update.sh を再実行するか (~/.aris/repo を更新)、正規のスクリプトを \$ARIS_REPO/skills/paper-illustration-image2/scripts/ からコピーしてください。" >&2
      exit 1
    }
    

    以下のすべての呼び出しでは python3 "$IMAGE2_HELPER" <サブコマンド> を使用します。

CVPR/ICLR/NeurIPS トップ会議スタイルガイド

「CVPR スタイル」の実際の意味:

視覚基準

  • クリーンな白背景 — 非常に控えめでない限り、装飾的なパターンやグラデーションは避ける
  • サンセリフフォント — Arial、Helvetica、または同様にクリーンな論文向けタイポグラフィ
  • 控えめなカラーパレット — 虹色ではなく、調整された 3~5 色を使用
  • 印刷対応 — グレースケールでも理解可能であること
  • プロフェッショナルな境界線 — 細めから中程度、クリーンで一貫性があること

レイアウト基準

  • 水平フロー — パイプラインのデフォルトは左から右
  • 明確なグループ化 — 関連モジュールにはスペースまたは控えめなグループ化ボックスを使用
  • 一貫したサイジング — 類似コンポーネントは類似サイズにする
  • バランスの取れたホワイトスペース — 窮屈すぎず、まばらすぎもしないレイアウトを避ける

矢印基準 (最も重要)

  • 太いストローク — 論文を拡大縮小した後も矢印が視認できること
  • 明確な矢先 — 大きく、間違いようのない矢先
  • 暗い色 — 黒または濃い灰色の矢印を推奨
  • ラベル付き — 重要な矢印には、何が流れているかを示すこと
  • 交差なし — 可能な限り交差を避けるために図を再構成すること
  • 正しい方向 — 矢印は正しいターゲットを指すこと

視覚的魅力 (アカデミックプロフェッショナルスタイル)

目標:保守的でも派手でもなく、バランスを見つけること

✅ あるべきもの

  • 控えめなグラデーション — 優しい同系色のグラデーションは許容
  • 角丸 — モダンだが控えめな角丸ブロック
  • 明確な階層 — メインモジュールは大きく、セカンダリモジュールは小さく
  • 一貫した色分け — モジュールタイプと色の安定したマッピング
  • プロフェッショナルなタイポグラフィ — 読み取り可能なサイズ階層を持つクリーンなラベル

❌ 避けるべきもの

  • ❌ 虹色グラデーション
  • ❌ 強いドロップシャドウ
  • ❌ 3D 遠近効果
  • ❌ 発光効果
  • ❌ 装飾的なクリップアートアイコン
  • ❌ 派手で論文準備ができていないスライドデッキスタイル

✓ 理想的な効果

  • 意図的で、プロフェッショナルで、すぐに読み取れるように見える
  • 装飾的になることなく、適度な視覚的魅力を持つ
  • トップ会議の論文図にふさわしいと感じられる
  • PDF の拡大縮小やグレースケール印刷に耐える

避けるべきもの (重要)

  • ❌ 細く、髪の毛のような矢印
  • ❌ ラベルのない、または曖昧な接続
  • ❌ 小さく読み取れないテキスト
  • ❌ 階層のない、平らで退屈なボックススープ
  • ❌ シャドウ/グロー/アイコンで過度に装飾された図
  • ❌ 間違った矢印の方向

スコープ

図のタイプ品質例
アーキテクチャ図優秀モデルアーキテクチャ、パイプライン、エンコーダ-デコーダ
メソッド図優秀概念図、アルゴリズムフローチャート
概念図良好比較図、分類ツリー

対象外: 統計プロット (/paper-figure を使用)、決定論的ベクトルトポロジ図 (/figure-spec を推奨)、フォトリアリスティックシーン

ワークフロー: すべてのステップを実行すること

ステップ 0: 事前フライトチェック

開始前にこのチェックリストを明示的にレンダリングします:

📋 paper-illustration-image2 統合チェックリスト:
   [ ] 1. python3 "$IMAGE2_HELPER" preflight --workspace <cwd> --json-out figures/ai_generated/preflight.json
   [ ] 2. レンダリング前に事前フライト JSON が ok=true であることを確認
   [ ] 3. mcp__codex-image2__generate_start + generate_status でレンダリング
   [ ] 4. python3 "$IMAGE2_HELPER" finalize --workspace <cwd> --best-image <best_png> でファイナライズ
   [ ] 5. python3 "$IMAGE2_HELPER" verify --workspace <cwd> --json-out figures/ai_generated/verify.json でアーティファクトを検証
  1. figures/ai_generated/ が存在しない場合は作成します。
  2. リクエストがラスターイラストに適していることを確認します:
    • アーキテクチャ図
    • 概念メソッド図
    • ワークフロー図
  3. ユーザーが別途要求しない限り、英語の図テキストを推奨します。
  4. 以下を実行します:
python3 "$IMAGE2_HELPER" preflight \
  --workspace <cwd> \
  --json-out figures/ai_generated/preflight.json
  1. 事前フライトが ok=true でない場合は、停止し、その旨を明確に伝えます。

ステップ 1: Claude が図を計画

ユーザーリクエストを完全に指定された画像プロンプトに変換します。以下を含めます:

  • 図のタイプ
  • 正確なモジュール/ステージ
  • フロー方向
  • 表示するラベル
  • データフロー矢印
  • スタイル制約
  • 避けるべきもの

入力がメモや論文セクションである場合、最終的な画像プロンプトを書く前に、まずそれをクリーンな図の概要に要約します。

ステップ 2: レイアウト最適化

このステップは必須です。レンダリング前に、プロンプトを具体的なレイアウト計画に洗練します:

  • 正確なモジュール順序
  • スペーシングとグループ化
  • 相対的なモジュールの重要度
  • 矢印のルーティングと衝突の可能性のあるポイント

選択されたテキストレビュールートが利用可能な場合、ここで短いセカンドオピニオンレイアウト批評を依頼しても構いませんが、エグゼキュータは外部批評家なしでこのステップを完了する必要があります。

レイアウト批評には Codex を使用します:

  • 欠落しているコンポーネント
  • 混乱を招くレイアウト
  • 弱いフロー階層
  • 矢印方向の曖昧さや乱雑さの可能性

ステップ 3: スタイル検証

このステップも必須です。レンダリング前に、意図された論文スタイルに対してプロンプトをチェックします:

  • パレットは控えめでアカデミックか
  • 矢印は太く、暗く、読み取り可能か
  • ラベルは簡潔で、特に要求がない限り英語か
  • 図はグレースケール/印刷で明確に読めるか
  • 発光、虹色グラデーション、スライドデッキの装飾が含まれていないか

選択されたテキストレビュールートが利用可能な場合、短いテキストのみのスタイル監査を依頼しても構いませんが、それをブロッカーにしないでください。

ステップ 4: ブリッジを介して生成

mcp__codex-image2__generate_start を呼び出します:

  • prompt: 最終的な画像プロンプト
  • cwd: 現在のプロジェクトルートまたは論文ワークスペース
  • outputPath: figures/ai_generated/figure_v1.png
  • system: Academic paper figure. Prefer crisp English labels. のような短い指示
  • timeoutSeconds: 180 などのバインドされたレンダリングタイムアウト

次に、mcp__codex-image2__generate_status をバインドされた待機で呼び出し、以下になるまで続けます:

  • done=true かつ status=completed、または
  • done=true かつ status=failed

生成が失敗した場合は、隠さずにブリッジエラーを直接報告します。

ステップ 5: 出力をレビュー

生成された画像を厳格なチェックリストでレビューします:

  • すべての主要コンポーネントが存在するか?
  • 論理フローは明白か?
  • ラベルは読み取り可能か?
  • 矢印は正しい方向を向いているか?
  • 図はスライドというよりも論文準備ができているように見えるか?

1~10 のスコアを付けます。

ステップ 6: 必要に応じて改善

スコアが 9 未満の場合、ターゲットを絞った改善プロンプトを作成します:

  • 何が間違っていたかを正確に述べる
  • 具体的で実行可能な指示を与える
  • スタイルガイドへの参照を含める
  • outputPath を figures/ai_generated/figure_v2.png にインクリメントする
  • レイアウト最適化(ステップ 2)からループバックする

ステップ 7: ファイナライズして検証

ベストイメージでファイナライズします:

python3 "$IMAGE2_HELPER" finalize --workspace <cwd> --best-image figures/ai_generated/figure_v<N>.png

次に検証します:

python3 "$IMAGE2_HELPER" verify --workspace <cwd> --json-out figures/ai_generated/verify.json

verify.json の内容を報告します。

コード例

例 1: 新しいアーキテクチャ図

ユーザー: 「私の新しい ViT ベースのセグメンテーションヘッドのアーキテクチャ図を描いてください。入力は画像パッチ、ViT エンコーダー、その後ろに 2 つのトランスフォーマーデコーダー、そして最終的なセグメンテーションマスク出力があります。」

Claude: (図の概要を生成し、事前フライトを実行し、すべてのステップを実行する)

例 2: 既存の図を改善

ユーザー: 「figures/method_v1.png を改善して、よりプロフェッショナルな CVPR スタイルにしてください。矢印が細すぎて、テキストが小さすぎます。」

Claude: (スコア 5 を割り当て、細い矢印と小さいテキストを具体的に指摘し、ターゲットを絞ったプロンプトで改善するためにループバックする)

一般的な問題のトラブルシューティング

問題原因修正
ネイティブ画像生成の失敗Codex アプリサーバーが実行されていないブリッジエラーを報告し、明確に停止する
スコアが一貫して低いプロンプトに具体性が不足しているより厳密なレイアウトとスタイル検証ステップを実行する
矢印の方向が間違っているデータフロー記述が曖昧プロンプトで矢印の方向を明示的に指定する
ラベルが読み取れないフォントサイズが小さすぎるプロンプトに最小フォントサイズ制約を追加する

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

関連スキル