mcpField
I
image-create

image-create

github.com/starchild-ai-agentクリエイティブ・メディア302.1k 回インストール6 日前に更新
リポジトリ

image-create について

テキストの説明から画像を生成する Starchild のスキルです。デザイン、イラスト、ゲーム素材、SNS コンテンツの作成に向けたカテゴリやスタイルのプリセットを備え、モデル、枚数、比率、参照画像を指定できます。

主な機能

  1. 01テキストからの画像生成
  2. 02カテゴリとスタイルのプリセット
  3. 03画像モデルの選択
  4. 04枚数とアスペクト比の指定
  5. 05参照画像の入力

活用シーン

  1. 01ロゴ、ポスター、イラストの作成
  2. 02ゲーム素材や SNS ビジュアルの生成
  3. 03教育やファッション向け画像の制作

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/starchild-ai-agent/official-skills --skill image-create

インストール後、Claude Code で/image-createを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

_cost_track.py
exports.py
generate_image.py

詳細

image-create

Starchild 上のすべての純粋なテキストから画像への生成リクエストには、このスキルを使用してください。

対象: ロゴデザイン、ポスターデザイン、イラスト、ミーム作成、ゲームアセット、ソーシャルメディアコンテンツ、3D レンダリング、教育用イラスト、ファッションデザイン、フードフォトグラフィー、ペットのイラスト、ウェディングデザイン、ホリデーマーケティング、芸術的スタイルの作成。

基本原則: 提供されたスクリプトを呼び出してください。プロキシ/課金の配管を再実装しないでください。

image-create と image-portrait の使い分け:

  • image-create → ユーザーがテキストの説明から何かを CREATE したい場合(顔/本人性は不要)
  • image-portrait → ユーザーが参照写真から顔/本人性を保持したポートレートを希望する場合

1. クイックスタート — 基本的な生成(最も一般的)

⚠️ 実行コンテキスト — まずこれを読んでください。 以下のコードブロックはPythonであり、シェルコマンドではありません。Starchild の bash ツールは /bin/bash -c を実行するため、exec(open(...)) を解析できません — これをそのまま bash コマンドに貼り付けると syntax error near unexpected token 'open' で失敗します。 また、python3 -c 内での exec(open(...)) は NameError: __file__ で失敗します。 これはスクリプトがパス解決に __file__ を使用しているためです。

bash ツール経由で呼び出す場合は、python3 - <<'EOF' と from exports import を使用してください:

python3 - <<'EOF'
import sys
sys.path.insert(0, "skills/image-create")
from exports import generate_image
result = generate_image(
    prompt="a futuristic city skyline at sunset with flying cars",
)
print(result)
EOF

ヒアドキュメント(<<'EOF')はすべての引用符と改行を保持します — エスケープは不要です。

exec(open('skills/image-create/generate_image.py').read())
result = generate_image(
    prompt="a futuristic city skyline at sunset with flying cars",
)
# result -> {"success": True, "images": [{"local_path": "output/images/..."}], ...}

2. クイックスタート — カテゴリプリセットを使用

exec(open('skills/image-create/generate_image.py').read())
result = generate_image(
    prompt="StarChild AI platform",
    category="logo",
    style="tech",
)

3. クイックスタート — カテゴリのみ(カスタムプロンプトなし)

exec(open('skills/image-create/generate_image.py').read())
result = generate_image(
    category="3d",
    style="diorama",
)
# Uses the built-in style template as the full prompt
結果をユーザーに配信する — 重要

ユーザーに生の fal.media URL を絶対に渡さないでください。 fal は制限的な CSP ヘッダーでファイルを配信します。信頼できる唯一の配信経路は、すでにダウンロード済みのローカルファイルです:

  1. 各画像の local_path(例: output/images/xxx.png)を使用してください — スクリプトは成功時に必ずダウンロードします。
  2. ファイルは output/images/ に保存され、ワークスペースのファイルパネルで閲覧できることをユーザーに伝えてください。
  3. Web チャネルでは、ユーザーがチャット内でプレビューできるようにインラインで埋め込んでください:
    ![image](output/images/<filename>.png)
    
  4. Telegram / WeChat では、send_to_telegram(file_path="output/images/...", message_type="image") または send_to_wechat(file_path="output/images/...", message_type="image") で送信してください。

4. パラメータ

パラメータ必須デフォルト説明
promptyes*—生成したい画像のテキスト説明
categoryyes*—プリセットカテゴリ(§5 を参照)
styleno"default"カテゴリ内のサブスタイル(§5 を参照)
modelno"nanopro"モデル: "nano2"(最速 ~15s)、"nanopro"(バランス ~25s、デフォルト)、または "gpt"(最高品質 ~150s)
countno1生成する画像の数(1~4)
aspect_rationoauto出力比率: 1:1、2:3、3:2、3:4、4:3、4:5、5:4、9:16、16:9、21:9。設定しない場合、カテゴリに応じて自動選択されます。
image_pathno—参照/インスピレーション画像用の任意のローカルファイルパス
image_urlno—参照/インスピレーション画像用の任意の公開 URL

*prompt または category の少なくとも一方を指定する必要があります。

プロンプトの優先順位: prompt + category/style(拡張) > prompt のみ > category + style > category デフォルト。

アスペクト比の自動選択: 明示的に設定されていない場合、スクリプトはカテゴリに最適な比率を選択します(例: ロゴには 1:1、ポスターには 3:4、バナーには 16:9)。


5. カテゴリとスタイルのプリセット

E: デザイン — ロゴ(category="logo")

⚠️ AI はテキストを確実にレンダリングできません。 アイコン/シンボルのみを生成し、テキスト/ワードマークはデザインツール(Figma、Canva、Illustrator)で追加してください。

スタイルキー最適な用途
抽象的幾何学abstractテック、コンセプトブランド(Nike スウッシュ風)
具象アイコンpictorialユニバーサルブランド、テキストなしで機能(Apple 風)
マスコットキャラクターmascot親しみやすいブランド、食品、スポーツ(KFC 風)
テック企業techSaaS、AI、フィンテックのスタートアップ
食品ブランドfoodレストラン、ベーカリー、オーガニック
ファッションブランドfashionラグジュアリー、アパレル、ビューティー
ゲーミングgamingeスポーツ、ゲームスタジオ
汎用defaultあらゆるプロフェッショナルなロゴ

ロゴプロンプトのアンチパターン(避けてください):

  • ❌ "logo with text 'Company Name'" — テキストが文字化けします
  • ❌ "photorealistic logo" — ロゴは写真ではありません
  • ❌ "3D rendered logo" — 複雑すぎて、縮小してもきれいになりません
  • ✅ "flat vector logo of [subject], minimal geometric style, single color, white background"
E: デザイン — ポスター(category="poster")
スタイルキー最適な用途推奨比率
映画ポスターmovie映画プロモーション、シネマティック3:4
音楽フェスmusic_festivalコンサート、フェス3:4
テックカンファレンスtech_conferenceテックイベント、ハッカソン3:4
旅行先travel観光、旅行欲3:4
製品発表product_launch製品アナウンス3:4
ミニマリストアートminimalistインテリア、ギャラリー3:4
スポーツイベントsportsスポーツイベント3:4
汎用defaultあらゆるポスター3:4
E: デザイン — イラスト(category="illustration")
スタイルキー最適な用途
ファンタジーfantasyファンタジーの世界、魔法、ドラゴン
SFscifi未来的なシーン、宇宙
絵本children子ども向けコンテンツ、絵本(3〜5歳)
エディトリアルeditorial雑誌、記事のヘッダー
ボタニカルbotanical科学植物イラスト
汎用defaultあらゆるイラスト
E: デザイン — ミーム(category="meme")
スタイルキー最適な用途
動物ミームanimalかわいい/おかしな動物ミーム
リアクションreactionリアクションテンプレート
シュールsurreal不条理なインターネットユーモア
汎用defaultあらゆるミーム
K: ゲームアセット(category="game_asset")
スタイルキー最適な用途一般的なサイズ
キャラクターコンセプトcharacterRPG キャラクター、ヒーロー1024x1024
環境environmentゲームの世界、レベル1920x1080
武器/小道具weaponアイテム、武器、アーティファクト1024x1024
UI アイコンui_iconゲーム UI、モバイルアイコン32x32〜128x128
ピクセルスプライトpixel_spriteレトロゲームのキャラクター32x32〜64x64
タイルセットtilesetシームレスな環境タイル256x256〜512x512
汎用defaultあらゆるゲームアセット1024x1024
M: ソーシャルメディア(category="social_media")
スタイルキー最適な用途推奨比率解像度
Instagram 投稿instagramIG フィード投稿1:11080x1080
小紅書xiaohongshu小紅書の投稿3:41080x1440
TikTok カバーtiktok_coverTikTok サムネイル9:161080x1920
YouTube サムネイルyoutube_thumbnailYT サムネイル16:91280x720
バナーbannerTwitter/YouTube バナー16:91920x1080
ストーリーstoryIG/FB ストーリー9:161080x1920
汎用defaultあらゆるソーシャルコンテンツ1:11024x1024
N: 3D (category="3d")
スタイルキー最適な用途
3D キャラクターcharacterピクサー風のキャラクター
商品レンダリングproduct商品のビジュアライゼーション
ジオラマdioramaミニチュアシーン、アイソメトリック
アプリアイコンiconiOS/Android のアプリアイコン
3D テキストtextクローム/メタリックなテキスト
3D シーンsceneローポリの環境
汎用defaultあらゆる 3D レンダリング
P: 教育 (category="education")
スタイルキー最適な用途
教科書textbook教科書のイラスト
インフォグラフィックinfographicデータのビジュアライゼーション
科学science科学図、解剖図
歴史history歴史的な情景の再現
図解diagram技術的なプロセス図
汎用defaultあらゆる教育コンテンツ
Q: ファッション (category="fashion")
スタイルキー最適な用途
衣類デザインclothing衣服のスケッチ、ファッションプレート
アクセサリーaccessoryジュエリー、バッグ、靴
ネイルアートnail_artネイルデザイン
テキスタイルパターンtextile生地のパターン、サーフェスデザイン
汎用defaultあらゆるファッションデザイン
R: フード (category="food")
スタイルキー最適な用途
料理写真dishフードフォトグラフィー、エディトリアル
メニューデザインmenuレストランのメニュー
パッケージpackaging食品パッケージのデザイン
レシピカードrecipe_cardレシピのイラスト
汎用defaultあらゆるフードコンテンツ
S: ペット (category="pet")
スタイルキー最適な用途
擬人化ペットhumanized人間の服を着たペット
ルネサンスrenaissance王室風/高貴なペットの肖像画
カートゥーンcartoonディズニー/ピクサー風のペット
マーチャンダイズmerchandiseペットをテーマにした商品パターン
メモリアルmemorialペットへの追悼アートワーク
汎用defaultかわいいペットのイラスト
I: 商品写真 (category="product")

product-photography スキルのベストプラクティスから派生したものです。

スタイルキー最適な用途
ヒーローショットheroメインの商品画像、雑誌広告
パックショットpackshotEC リスティング、Amazon(純白背景)
ライフスタイルlifestyle文脈の中の商品、エディトリアル
フラットレイflat_layInstagram、真上からの配置
汎用defaultあらゆる商品写真

商品写真のヒント:

  • ヒーローショット: 商品がフレームの 80% を占め、立体感を出すために 15~30° のわずかな角度をつけます
  • パックショット(Amazon): 純白の背景、商品が 85% 以上を占め、小道具/テキスト/ウォーターマークはなし
  • 必ずライティングを指定します:「柔らかなスタジオ照明」、「ドラマチックなリムライト」
  • EC 向けには:「シャープなフォーカス」、「影なし」または「ごく薄い影のみ」
Y: ウェディング (category="wedding")
スタイルキー最適な用途フォーマット
クラシックな招待状invitation花柄のエレガントな招待状5x7 インチ
モダンな招待状invitation_modernミニマリストな招待状5x7 インチ
ラスティックな招待状invitation_rusticボヘミアンな招待状5x7 インチ
会場プレビューvenue会場装飾のプレビュー—
セーブ・ザ・デートsave_the_date事前案内カード4x6 インチ
汎用defaultあらゆるウェディングデザイン—
Z: ホリデーマーケティング(category="holiday")
スタイルキー最適な用途
クリスマスカードchristmas_cardクリスマスの挨拶
旧正月chinese_new_year春節のデザイン
新年new_year新年のお祝い
バレンタインvalentinesバレンタインデー
ハロウィンhalloweenハロウィンのデザイン
プロモーションpromotionalセールバナー、販促
中秋mid_autumn中秋節のデザイン
一般defaultあらゆるホリデーコンテンツ

キャンペーン計画のための主要な祝日カレンダー:

祝日時期最適な用途
旧正月1月〜2月ギフト、家族、食べ物
バレンタインデー2月14日ロマンス、ギフト
女性の日3月8日エンパワーメント、ギフト
520(5/20)5月20日ロマンス(中国のバレンタイン)
618ショッピング6月Eコマースセール
七夕7月〜8月ロマンス
中秋9月家族、月餅
国慶節10月1日旅行、ショッピング
11.11 独身の日11月11日大規模セール
12.12 ダブル1212月12日年末セール
クリスマス12月25日ギフト、冬
C: アートスタイル(category="art_style")
スタイルキー最適な用途
スタジオジブリghibliジブリ風のシーン
アメリカンコミックamerican_comicマーベル/DCスタイル
日本漫画manga漫画のイラスト
ピクセルアートpixel_artレトロゲームスタイル
鉛筆スケッチpencil_sketch手描きの風合い
3Dカートゥーン3d_cartoonピクサー/ディズニースタイル
スチームパンクsteampunkヴィクトリア朝SF
ファンタジー魔法fantasy_magic魔法のシーン
武侠/仙侠wuxia中国武術
SF宇宙scifi_space宇宙のシーン
ポップアートpop_artウォーホルスタイル
浮世絵ukiyo_e日本の木版画
印象派impressionistモネ/ルノワールスタイル
アール・ヌーヴォーart_nouveauミュシャスタイル
一般defaultあらゆる芸術スタイル

6. モデル選択ガイド

モデルキー速度品質最適な用途
NanoPronanopro約25秒良好すべてのリクエストのデフォルト。高速な反復。
GPT Image 2gpt約150秒最高ユーザーが明示的に「最高品質」または「ベスト品質」を求めた場合。テキストの多いデザイン。

判断ルール:

  1. デフォルト: ユーザーが明示的に高品質を要求しない限り、常に nanopro を使用します。
  2. gpt を使用する場合: ユーザーが「最高品質」「ベスト品質」「プレミアム」と言った場合、またはデザインに正確なテキストレンダリングが必要な場合(特定のテキストを含むロゴ、タイポグラフィを使ったポスター)。
  3. nanopro を使用する場合: ユーザーが迅速な結果を求めている、デザインを反復している、または複数のバリエーションを生成している場合。
# Default (fast)
result = generate_image(prompt="cute cat logo", category="logo")

# High quality (user requested)
result = generate_image(prompt="cute cat logo", category="logo", model="gpt")

7. アスペクト比ガイド

カテゴリデフォルト比率備考
ロゴ1:1正方形、拡大縮小可能
ポスター3:4縦向き
イラスト4:3横向き、ワイドなシーン
ミーム1:1正方形、共有しやすい
ゲームアセット1:1正方形、一貫性
ソーシャルメディア1:1プラットフォームによって異なる
3D1:1正方形レンダー
教育4:3横向き、読みやすい
ファッション3:4縦向き、衣装全体
フード4:3横向き、食欲をそそる
ペット1:1正方形、かわいい
商品1:1正方形、Eコマース
ウェディング3:4縦向き、エレガント
ホリデー4:3横向き、お祝い
アートスタイル4:3横向き、風景

プラットフォーム固有の上書き(自動適用):

  • TikTokカバー → 9:16 (1080x1920)
  • Instagramストーリー → 9:16 (1080x1920)
  • YouTubeサムネイル → 16:9 (1280x720)
  • ソーシャルメディアバナー → 16:9 (1920x1080)
  • 小红书 → 3:4 (1080x1440)

aspect_ratio が明示的に設定されていない場合、スクリプトが最適な比率を自動選択します。


8. プロンプトエンジニアリングのベストプラクティス

5要素のプロンプト構造

効果的な画像プロンプトにはすべて、以下を含める必要があります:

[subject/content], [style/aesthetic], [composition/layout], [lighting/atmosphere], [quality modifiers]
主要な原則
  1. 主題を具体的に指定する:

    • ❌「ロゴ」
    • ✅「ペットトリミング店向けのミニマリストな猫のシルエットロゴ、クリーンなベクタースタイル」
  2. ビジュアルスタイルを指定する:

    • 「フラットデザイン」「3D レンダー」「水彩画」「フォトリアル」
    • 「ミニマリスト」「詳細」「抽象的」「幾何学的」
  3. 構図のガイダンスを含める:

    • 「中央配置の構図」「三分割法」「対称レイアウト」
    • 「クローズアップ」「ワイドショット」「アイソメトリックビュー」「俯瞰視点」
  4. ライティングは重要です:

    • スタジオ: 「柔らかく拡散したスタジオ照明」「レンブラントのキアロスクーロ」
    • 自然: 「ゴールデンアワーの暖かな光」「木々の間から差し込む木漏れ日」
    • ドラマチック: 「ドラマチックなリムライト」「ボリュメトリックライトビーム」「ネオングロー」
    • フラット: 「影のない均一なフラットライティング」(アイコンや図表向け)
  5. 品質のアンカー:

    • 「プロフェッショナル品質」「印刷可能」「4K 解像度」
    • 「Octane レンダー」「Unreal Engine 品質」「雑誌品質」
  6. 画像内のテキストについて(gpt モデルを使用):

    • テキストを明示的に記述する: text reading "SALE 50% OFF"
    • フォントスタイルを指定する: 「太字のサンセリフ書体」「エレガントなスクリプトフォント」
    • GPT モデルは nanopro よりもはるかに優れたテキストレンダリングを処理します
ロゴ固有のプロンプトのヒント(logo-design-guide より)

効果的なキーワード:

flat vector logo, simple minimal icon, single color silhouette,
geometric logo mark, clean lines, negative space design,
line art logo, flat design icon, minimalist symbol

失敗するキーワード:

❌ photorealistic logo (contradiction — logos aren't photos)
❌ 3D rendered logo (too complex, won't scale down)
❌ gradient logo (inconsistent results, hard to reproduce)
❌ logo with text "Company Name" (text rendering fails)

ロゴ用のプロンプト構造:

flat vector logo of [subject], [style], [color constraint], [background], [additional detail]
子ども向けイラストのヒント(book-illustrator より)
  • 0〜2 歳: シンプル、大胆、高コントラスト、明快な形
  • 3〜5 歳: カラフル、表現豊か、動きのある魅力的なキャラクター
  • 6〜8 歳: 視覚的なストーリーテリングを伴う、より詳細なシーン
  • 9〜12 歳: テキストを補完する洗練されたイラスト
  • 3 色のルール: 視覚的な明快さのために、各キャラクターを 3〜4 色の主要色に制限する
ゲームアセットのヒント(game-asset-generation より)
  • スプライトには常にピクセル寸法を指定する: 「32x32」「64x64」「128x128」
  • シームレステクスチャの場合: 「繰り返しても目に見える継ぎ目がないよう、完全にタイル化する必要がある」
  • スプライトシートの場合: グリッドレイアウトを指定する「4x2 グリッド(合計 256x64)」
  • アイコンの場合: 「32x32 ピクセルで判読できる明快なシルエット」
例: カスタムプロンプトの構築

ユーザー: 「Bean Dream という名前のコーヒーショップのロゴをデザインして」

result = generate_image(
    prompt=(
        "flat vector logo of a coffee bean morphing into a crescent moon, "
        "minimalist design, warm brown and cream color palette, "
        "clean lines, white background, "
        "professional branding quality, works at any size"
    ),
    category="logo",
    model="gpt",  # GPT for better detail
)
例: ゲームキャラクターのコンセプト

ユーザー: 「RPG ゲーム用の戦士キャラクターを作成して」

result = generate_image(
    prompt=(
        "female warrior character, ornate golden armor with dragon motifs, "
        "flowing red cape, wielding a glowing enchanted sword, "
        "determined fierce expression, battle-ready stance, "
        "front view T-pose, clean white background"
    ),
    category="game_asset",
    style="character",
)
例: ソーシャルメディアコンテンツ

ユーザー: 「料理のコツについての TikTok カバーを作って」

result = generate_image(
    prompt=(
        "cooking tips video thumbnail, colorful kitchen scene, "
        "fresh ingredients flying in the air, chef's hands visible, "
        "fun energetic vibe, bold visual impact"
    ),
    category="social_media",
    style="tiktok_cover",
    # aspect_ratio auto-set to 9:16
)

9. 意図認識ガイド

この表を使用して、ユーザーのリクエストを正しいカテゴリ/スタイル/パラメータにマッピングしてください:

ユーザーの発言カテゴリスタイル備考
"design a logo", "make a logo"logo自動検出スタイルのために業界について質問する
"create a poster", "event poster"poster自動検出
"draw an illustration", "illustrate"illustration自動検出
"make a meme", "funny image"meme自動検出
"game character", "RPG asset"game_assetcharacter
"game environment", "level design"game_assetenvironment
"weapon design", "sword/shield"game_assetweapon
"game icon", "UI icon"game_assetui_icon
"pixel art sprite"game_assetpixel_sprite
"tileable texture", "seamless tile"game_assettileset
"Instagram post", "IG content"social_mediainstagram
"小红书", "xiaohongshu"social_mediaxiaohongshu
"TikTok cover", "抖音封面"social_mediatiktok_cover9:16
"YouTube thumbnail"social_mediayoutube_thumbnail16:9
"banner", "cover image"social_mediabanner16:9
"story template"social_mediastory9:16
"3D character", "Pixar style"3dcharacter
"product render", "3D product"3dproduct
"diorama", "miniature scene"3ddiorama
"app icon", "3D icon"3dicon
"3D text", "chrome text"3dtext
"textbook illustration"educationtextbook
"infographic", "data viz"educationinfographic
"scientific diagram"educationscience
"historical scene"educationhistory
"fashion sketch", "clothing design"fashionclothing
"accessory design", "jewelry"fashionaccessory
"nail art", "nail design"fashionnail_art
"textile pattern", "fabric design"fashiontextile
"food photo", "dish"fooddish
"menu design"foodmenu
"food packaging"foodpackaging
"recipe card"foodrecipe_card
"product photo", "product shot"producthero
"Amazon listing", "e-commerce photo"productpackshot白背景
"lifestyle product", "product in context"productlifestyle
"flat lay", "top-down product"productflat_lay
"pet in clothes", "humanized pet"pethumanized
"royal pet", "renaissance pet"petrenaissance
"cartoon pet", "Disney pet"petcartoon
"pet merchandise", "pet pattern"petmerchandise
"pet memorial", "rainbow bridge"petmemorial
"wedding invitation", "请柬"weddinginvitation
"modern invitation"weddinginvitation_modern
"rustic invitation"weddinginvitation_rustic
"wedding venue", "婚礼布置"weddingvenue
"save the date"weddingsave_the_date
"Christmas card", "圣诞贺卡"holidaychristmas_card
"春节", "Chinese New Year"holidaychinese_new_year
"New Year design", "新年"holidaynew_year
"Valentine's card", "情人节"holidayvalentines
"Halloween", "万圣节"holidayhalloween
"sale banner", "promotional"holidaypromotional
"中秋节", "Mid-Autumn"holidaymid_autumn
"Ghibli style", "吉卜力"art_styleghibli
"comic style", "漫画风"art_styleamerican_comic or manga
"pixel art", "像素风"art_stylepixel_art
"pencil sketch", "素描"art_stylepencil_sketch
"steampunk", "蒸汽朋克"art_stylesteampunk
"fantasy", "魔法"art_stylefantasy_magic
"wuxia", "武侠", "仙侠"art_stylewuxia
"space", "太空", "sci-fi"art_stylescifi_space
"pop art", "波普"art_stylepop_art
"ukiyo-e", "浮世绘"art_styleukiyo_e
"impressionist", "印象派"art_styleimpressionist
"Art Nouveau", "新艺术"art_styleart_nouveau
"highest quality", "best quality"anyany + model="gpt"
プリセットにないカスタム説明——prompt= を直接使用してください

10. 参照画像を使用する場合(任意)

このスキルは主にテキストから画像を生成するものですが、デザインのインスピレーションとして参照画像を指定できます。

# Reference image for design guidance
result = generate_image(
    prompt="redesign this logo in a modern minimalist style",
    category="logo",
    image_path="uploads/old_logo.png",
)

# Reference URL
result = generate_image(
    prompt="create a similar style illustration but with a forest theme",
    image_url="https://example.com/reference.jpg",
)

参照画像が指定された場合、スクリプトは generate エンドポイントではなく /edit エンドポイントを使用します。


11. 複数の画像

# Generate 4 logo variants
result = generate_image(
    prompt="minimalist mountain logo for outdoor brand",
    category="logo",
    count=4,
)
# result["images"] -> list of 4 image dicts

12. アンチパターン(これらは避けてください)

避けるべきもの理由代わりに
"logo with text 'My Brand'"AI がテキストを崩すアイコンのみを生成し、Figma/Canva でテキストを追加する
"photorealistic logo"ロゴは写真ではない「flat vector logo」を使用する
"3D rendered logo"favicon にスケールしない「flat minimal icon」を使用する
「nice image」のような曖昧なプロンプト結果が悪い被写体、スタイル、色、ライティングを具体的に指定する
1 つのプロンプトに多すぎるコンセプト出力が混乱する1 つの明確なコンセプトに集中する
正確なピクセル寸法の要求サポートされていないaspect_ratio パラメータを使用する
テキストの多いデザインに nanopro を使用テキストのレンダリングが苦手テキストには model="gpt" を使用する

13. 提供されるスクリプト

ファイル目的
generate_image.pyコアスクリプト: プロンプト構築 → 送信 → ポーリング → ダウンロード。すべてのカテゴリ、スタイル、2 つのモデルを処理します。
exports.pyプログラムから利用するために generate_image、CATEGORY_STYLES、MODELS を再エクスポートします。
_cost_track.pyコスト追跡ヘルパー — sc-proxy ヘッダーを介して呼び出しごとのコストを記録します。自己完結型で、外部依存関係はありません。

14. ローカルテスト

FAL_KEY 環境変数を設定すると、fal.ai を直接呼び出します(sc-proxy をバイパスします):

# Basic generation
FAL_KEY=your-fal-key python3 skills/image-create/generate_image.py "a cute robot" illustration fantasy 1 nanopro

# Args: <prompt> [category] [style] [count] [model]

15. トラブルシューティング

問題解決方法
Either 'prompt' or 'category' must be provided少なくともプロンプトまたはカテゴリを指定してください
File not found: ...参照画像のワークスペースパスを確認してください
Unsupported image format.jpg、.jpeg、.png、.webp、または .bmp を使用してください
Image too large参照画像を 10 MB 未満にリサイズしてください
HTTP 402 insufficient_credits残高をチャージしてください。コストは送信時に事前課金されます
HTTP 403 endpoint_not_allowedsc-proxy は承認された fal エンドポイントのみを許可します。管理者に連絡してください
生成が上流で FAILEDプロンプトを簡略化して、再試行してください
ジョブが IN_PROGRESS のまま 10 分以上停滞request_id を保存し、後で再試行してください
テキストがうまくレンダリングされないmodel="gpt" に切り替えてください — GPT はテキストをはるかにうまく処理します
gpt モデルが遅すぎるより速い結果を得るには nanopro(デフォルト)に切り替えてください
ロゴが複雑すぎてスケールしないプロンプトに「flat vector」、「minimal」、「single color」を使用してください
シームレステクスチャに継ぎ目が見えるプロンプトに「must tile perfectly with no visible seams」を追加してください

16. インフラストラクチャ(参考)

  • 呼び出し元 → sc-proxy → queue.fal.run/{model} → fal モデルプロバイダー
  • すべてのリクエストには Authorization: Key fake-falai-key-12345 を含める必要があります(プロキシが実際の FAL_KEY を注入します)
  • 事前課金は送信時に発生します。ポーリング/結果の呼び出しは無料です。
  • 最終的な画像は https://*.fal.media/... に配置されます — パブリック CDN であり、ダウンロードに認証は不要です。
  • コスト追跡は _cost_track.py を介して行います — sc-proxy のレスポンスヘッダーから X-Credits-Used を記録します。
  • 各スキルには独自の _cost_track.py のコピーが含まれています(スキルは個別にデプロイされます)。
モデルエンドポイント
モデル生成(テキストのみ)編集(参照画像あり)
nanoprofal-ai/nano-banana-profal-ai/nano-banana-pro/edit
gptopenai/gpt-image-2openai/gpt-image-2/edit

コメント