返回 Skill 列表
extension
分类: 内容与媒体无需 API Key

media-generator

负责生成和编辑横幅/图表/幻灯片/图像的子代理。使用Gemini Image Generation API来生成各种媒体。通过“制作横幅”、“生成图表”、“创建幻灯片”、“生成图像”等请求触发。

person作者: jakexiaohubgithub

Media Generator サブエージェント

バナー/図表/スライド/画像の生成・編集を専用コンテキストで実行するサブエージェント。

目的

メディア生成処理をメインエージェントのコンテキストから分離し:

  • 複数の参照画像を含む処理を効率化
  • プラットフォーム別プリセットの適用
  • 生成結果のパス情報のみを返却

機能一覧

| 機能 | スクリプト | 説明 | |-----|----------|------| | バナー生成 | banner_creator.py | SNS/広告向けバナー生成 | | 図表生成 | generate_diagram.py | インフォグラフィック/図表生成 | | スライド生成 | generate_slide.py | 講義用スライド画像生成 | | 汎用画像生成 | nanobanana.py | テキスト→画像、画像編集 |

1. バナー生成 (cursor_tools/banner_creator.py)

プラットフォーム別プリセット

| プリセット | サイズ | アスペクト比 | 用途 | |-----------|-------|-------------|------| | x_post | 1200x675 | 16:9 | X タイムライン投稿 | | x_card | 800x418 | 16:9 | X リンクカード | | facebook | 1200x630 | 16:9 | Facebook リンク投稿 | | facebook_story | 1080x1920 | 9:16 | Facebook ストーリーズ | | instagram_feed | 1080x1080 | 1:1 | Instagram フィード | | instagram_story | 1080x1920 | 9:16 | Instagram ストーリーズ | | prtimes | 1200x630 | 16:9 | PRTimes プレスリリース | | youtube_thumbnail | 1280x720 | 16:9 | YouTube サムネイル | | line | 1200x628 | 16:9 | LINE 公式アカウント | | web_banner | 1200x628 | 16:9 | Web広告バナー |

使用方法

# X用バナー生成
python cursor_tools/banner_creator.py \
  --platform x_post \
  --topic "新サービスリリース告知" \
  --tone professional \
  --output-dir docs/generated/banners

# 参照画像を使用
python cursor_tools/banner_creator.py \
  --platform instagram_feed \
  --topic "夏のキャンペーン" \
  --reference-images image1.png image2.png \
  --output-dir docs/generated/banners

# コピーテキスト同時生成
python cursor_tools/banner_creator.py \
  --platform prtimes \
  --topic "プレスリリース用" \
  --with-copy \
  --output-dir docs/generated/banners

2. 図表/インフォグラフィック生成 (cursor_tools/generate_diagram.py)

スタイル

| スタイル | 説明 | |---------|------| | colorful_infographic | 明るい色、アイコン、読みやすいレイアウト | | sketch | 手描き風、鉛筆/チャコールテクスチャ | | photorealistic | 写真のようなリアルな質感 | | minimalist | シンプル、余白重視、限定カラー | | claymation | 3Dクレイ風、柔らかい照明 | | pixel_art | レトロゲーム風、ブロック調 |

使用方法

# トピックから図表生成
python cursor_tools/generate_diagram.py \
  --topic "マーケティングファネル" \
  --style colorful_infographic \
  --aspect-ratio 16:9 \
  --output-dir reports/visualizations

# 長文テキストからインフォグラフィック
python cursor_tools/generate_diagram.py \
  --topic "$(cat article.txt)" \
  --style minimalist \
  --output-dir reports/visualizations

3. 汎用画像生成/編集 (cursor_tools/nanobanana.py)

使用方法

# テキストから画像生成
python cursor_tools/nanobanana.py \
  --prompt "A futuristic city at sunset" \
  --aspect-ratio 16:9 \
  --output-dir docs/generated

# 画像編集(参照画像+指示)
python cursor_tools/nanobanana.py \
  --prompt "Make the background blue" \
  --reference reference.png \
  --output-dir docs/generated

# 複数参照画像を使用
python cursor_tools/nanobanana.py \
  --prompt "Combine these styles" \
  --reference image1.png image2.png \
  --output-dir docs/generated

アスペクト比

| アスペクト比 | 用途 | |-------------|------| | 1:1 | Instagram、プロフィール画像 | | 4:3 | 汎用横長 | | 3:4 | 汎用縦長 | | 16:9 | YouTube、プレゼン | | 9:16 | ストーリーズ、リール | | 21:9 | ウルトラワイド |

サブエージェント呼び出しパターン

メインエージェントは以下のパターンでこのサブエージェントを呼び出す:

Task(
    subagent_type="generalPurpose",
    model="fast",
    description="Banner generation",
    prompt="""
    このスキルを読んで実行してください: .claude/skills/media-generator/SKILL.md
    
    タスク: {ユーザーの指示}
    プラットフォーム: {x_post / instagram_feed / etc.}
    トピック: {生成内容}
    
    生成した画像のパスを返却してください。
    """
)

返却フォーマット

処理結果は以下の形式で返却:

status: success
generated_files:
  - path: docs/generated/banners/x_post_20260127_143022.png
    platform: x_post
    size: 1200x675
    aspect_ratio: 16:9
copy_text: |
  【新サービスリリース】
  AIを活用した業務効率化ツールが登場!
  #AI #業務効率化

依存関係

google-generativeai>=0.3.0
Pillow>=9.0.0
python-dotenv>=1.0.0

環境変数

# 必須
GEMINI_API_KEY=your_api_key
# または
GOOGLE_API_KEY=your_api_key

注意事項

  • 生成画像はdocs/generated/配下に自動保存
  • セッション名を指定するとサブフォルダに整理
  • 日本語テキストを含める場合は明示的に指示
  • 参照画像は最大5枚まで