Agent Skills by ALSEL
Anthropic ClaudeLLM・AI開発⭐ リポ 0品質スコア 50/100

ai-image-generator

GeminiまたはGPT APIを使用してAI画像を直接生成するスキルです。モデル選択(風景シーンにはGemini、テキスト描画・バッチバリエーション・複数参照合成にはGPT Image 2、透過アイコンにはGPT Image 1.5)、5段階プロンプト設計フレームワーク、API呼び出しパターン、マルチターン編集、品質保証までをカバーし、フォトリアルなシーン・アイコン・イラスト・OG画像・ポスター・インフォグラフィック・商品写真を生成します。「generate image」「create hero image」「make an icon」「gpt-image-2」などのキーワードをトリガーに、Webサイト制作やマーケティング素材の作成、ビジュアルコンテンツ生成が必要な場面で活用できます。

description の原文を見る

Generate AI images using Gemini or GPT APIs directly. Covers model selection (Gemini for scenes; GPT Image 2 for text rendering, batch variations, multi-reference compositing; GPT Image 1.5 for transparent icons), the 5-part prompting framework, API calling patterns, multi-turn editing, and quality assurance. Produces photorealistic scenes, icons, illustrations, OG images, posters, infographics, and product shots. Use when building websites that need images, creating marketing assets, or generating visual content. Triggers: 'generate image', 'ai image', 'create hero image', 'make an icon', 'generate illustration', 'create og image', 'poster', 'infographic', 'image variations', 'gpt-image-2', 'ai art', 'image generation'.

SKILL.md 本文

AI Image Generator

Google Gemini と OpenAI GPT の AI API を使用して画像を生成します。このスキルは、Claude Code から専門的な画像を直接生成するためのプロンプティングパターンと API の仕組みを教えます。

管理型の代替案: API キーを管理したくない場合、ImageBot はアルバムテンプレートとブランドキットのサポートを備えた管理型の画像生成サービスを提供しています。

モデル選択

仕事に合ったモデルを選びましょう:

ニーズモデル理由
写実的なシーン/ストック写真Gemini 3.1 Flash Image最高の深さ、複雑さ、環境コンテキスト
最終的なクライアントシーン (より高い詳細度)Gemini 3 Pro Imageより高い詳細度、より良いスタイル一貫性
画像上のテキスト (ポスター、コピー付き OG、インフォグラフィック)GPT Image 2テキスト描画が実際に機能する - 多言語スクリプトを含む
10バリエーション スタイル探索GPT Image 2ネイティブバッチ - 1 つのプロンプト、構成とパレットを共有する 10 バリエーション
マルチリファレンス合成 (製品 + ライフスタイル)GPT Image 2参照全体の照明、スケール、パースペクティブを処理
透明なアイコン/ロゴGPT Image 1.5ネイティブ RGBA アルファ - GPT Image 2 は透明化をサポートできません
クイックドラフト/イテレーションGemini 2.5 Flash Image無料ティア (1 日あたり約 500 枚)

経験則: 読み取り可能なテキストを含む画像 → GPT Image 2 (透明化が必要な場合は GPT 1.5)。それ以外 → Gemini。

モデル ID

モデルAPI IDプロバイダ
Gemini 3.1 Flash Imagegemini-3.1-flash-image-previewGoogle AI
Gemini 3 Pro Imagegemini-3-pro-image-previewGoogle AI
Gemini 2.5 Flash Imagegemini-2.5-flash-imageGoogle AI
GPT Image 2 (デフォルト)gpt-image-2OpenAI
GPT Image 2 (ChatGPT 同等出力)chatgpt-image-latestOpenAI
GPT Image 1.5 (透明化のみ)gpt-image-1.5OpenAI

使用前にモデル ID を確認してください - 頻繁に変更されます:

curl -s "https://generativelanguage.googleapis.com/v1beta/models?key=$GEMINI_API_KEY" | python3 -c "import sys,json; [print(m['name']) for m in json.load(sys.stdin)['models'] if 'image' in m['name'].lower()]"

GPT Image 2 の詳細

2026-04-22 にリリースされました。これを選択すべき時期を変える 3 つの機能があります。

1. テキスト描画が実際に機能

ポスター、見出しコピー付き OG イメージ、ラベル付きインフォグラフィック、UI モックアップ、価格カード。テキストは、非ラテン文字 (日本語、韓国語、ヒンディー語、ベンガル語) を含め、確実にレンダリングされます。Gemini から切り替える主な理由 - Gemini は読み取り可能なテキストをまったくレンダリングしません。

2. マルチバリエーション バッチ処理

1 つのプロンプム、1 回のコールで最大 10 画像。バリエーションは構成とパレットを共有しますが、詳細は異なります。コミット前のスタイル探索、クライアント向けの A/B オプション、急速な構想実現に適しています。

3. マルチリファレンス合成

プロンプトと並べて参照画像を提供 - 製品ショット、ライフスタイルシーン、ロゴ。モデルは製品をシーンに配置し、照明、スケール、パースペクティクティブを正しく処理します。マルチターン編集なしに「コンテキスト内の製品」ワークフローを可能にします。

モード

  • Instant (デフォルト、すべてのプラン) - 計画パスなしで生成します。高速、ほとんどの場合に十分です。
  • Thinking (Plus/Pro/Business プラン) - 描画前にレイアウトを計画します。要素数が重要な場合 (「1 行に 3 つのアイコン」、「5 つの機能箇条書き」) またはテキストが特定の領域に入る必要がある場合に使用してください。複雑な合成での再生成が少なくなります。

アスペクト比

3:1 ウルトラワイドから 1:3 ウルトラトール、さらに 1:1、3:2、2:3、16:9、9:16。他のモデルより広い範囲 - Web サイトバナー (ウルトラワイドヒーロー) またはモバイルストーリーフォーマット (ウルトラトール) に便利です。

解像度

長い辺の標準で最大 2K。ベータで 4K。

生成時間

複雑なプロンプトで最大 2 分。 非同期 UI を構築してください - レスポンスをブロックしないでください。進捗を表示するか、スピンオフしてポーリングしてください。

制約

  • 透明な背景なし。 PNG 透明化が必要な場合は gpt-image-1.5 にフォールバックします。
  • API Org Verification が必要な場合があります - エンドポイントが起動する前に OpenAI アカウント設定で有効にしてください。最初のコールで認証エラーが発生した場合。

価格設定 (1024×1024 画像あたり)

品質コスト
Low$0.006
Medium$0.053
High$0.211

トークン価格: テキスト入力 $5/M、テキスト出力 $10/M、画像入力 $8/M、画像出力 $30/M。

5 部構成のプロンプティング フレームワーク

一貫した結果を得るために、この順序でプロンプトを作成してください:

1. 画像タイプ

ジャンルを設定: 「写実的な写真」、「等角イラスト」、「フラットベクトル アイコン」

2. 主題

誰が何であるか、具体的な詳細を含む: 「温かく親しみやすいオーストラリア人女性 (早 30 代) が自然に微笑んでいる」

3. 環境

設定と空間関係: 「彼女の後ろの木製の棚に陶土色の装飾がある明るい現代の家の中」

4. 技術仕様

カメラと照明: 「85mm f/2.0 で撮影、自然な窓光、バストショットフレーミング」

5. 制約

除外すべきもの: 「写実的、テキストなし、透かしなし、ロゴなし」

例 (良い例 vs 悪い例)

悪い例 - キーワード羅列:
「プロの女性、スパ、暖かい照明、高品質、4K」

良い例 - ナラティブ方向:
「明るいクリニック設定での専門的なスキン トリートメント シーン。
ブルーの医療用手袋を着けた開業医がクライアントの額にマイクロニードリング ペンを使用しています。
クライアントは白いトリートメント ベッドの上に横たわり、目を閉じ、リラックスしています。左からの窓からの暖かい金色の光。背景に見える陶土色の壁。
85mm f/2.0 で撮影、浅い被写界深度。テキストなし、透かしなし。」

ワークフロー

1. 画像ニーズを決定

目的アスペクト比モデル
ヒーロー バナー (テキストなし)16:9 または 21:9Gemini
ヒーロー バナー (見出しコピー付き)16:9 または 3:1 ウルトラワイドGPT Image 2
サービス カード4:3 または 3:4Gemini
プロフィール/アバター1:1Gemini
アイコン/バッジ (透明)1:1GPT Image 1.5
OG/ソーシャル シェア (テキストなし)1.91:1Gemini
OG/ソーシャル シェア (コピー付き)1.91:1GPT Image 2
ポスター/インフォグラフィック/価格カード/タイポグラフィ重視様々GPT Image 2
スタイル探索 (1 つのコンセプトの 10 バリエーション)任意GPT Image 2 (バッチ)
Instagram 投稿1:1 または 4:5Gemini
モバイル ヒーロー9:16Gemini

2. プロンプトを作成

5 部構成のフレームワークを使用してください。詳細な写真パラメータについては、references/prompting-guide.md を参照してください。

3. API 経由で生成

Gemini (Python - シェル エスケープを正しく処理)

python3 << 'PYEOF'
import json, base64, urllib.request, os, sys

GEMINI_API_KEY = os.environ.get("GEMINI_API_KEY")
if not GEMINI_API_KEY:
    print("Set GEMINI_API_KEY environment variable"); sys.exit(1)

model = "gemini-3.1-flash-image-preview"
url = f"https://generativelanguage.googleapis.com/v1beta/models/{model}:generateContent?key={GEMINI_API_KEY}"

prompt = """A professional photograph of a modern co-working space in
Newcastle, Australia. Natural light floods through floor-to-ceiling
windows. Three people collaborate at a standing desk — one pointing
at a laptop screen. Exposed brick wall, potted fiddle-leaf fig,
coffee cups on the desk. Shot at 35mm f/4.0, environmental portrait
style. No text, no watermarks, no logos."""

payload = json.dumps({
    "contents": [{"parts": [{"text": prompt}]}],
    "generationConfig": {
        "responseModalities": ["TEXT", "IMAGE"],
        "temperature": 0.8
    }
}).encode()

req = urllib.request.Request(url, data=payload, headers={
    "Content-Type": "application/json",
    "User-Agent": "ImageGen/1.0"
})

resp = urllib.request.urlopen(req, timeout=120)
result = json.loads(resp.read())

# Extract image from response
for part in result["candidates"][0]["content"]["parts"]:
    if "inlineData" in part:
        img_data = base64.b64decode(part["inlineData"]["data"])
        output_path = "hero-image.png"
        with open(output_path, "wb") as f:
            f.write(img_data)
        print(f"Saved: {output_path} ({len(img_data):,} bytes)")
        break
PYEOF

GPT Image 1.5 - 透明なアイコン

透明 PNG の場合は、特に gpt-image-1.5 を使用してください。GPT Image 2 は透明化をサポートできません。

python3 << 'PYEOF'
import json, base64, urllib.request, os, sys

OPENAI_API_KEY = os.environ.get("OPENAI_API_KEY")
if not OPENAI_API_KEY:
    print("Set OPENAI_API_KEY environment variable"); sys.exit(1)

url = "https://api.openai.com/v1/images/generations"

payload = json.dumps({
    "model": "gpt-image-1.5",
    "prompt": "A minimal, clean plumbing wrench icon. Flat design, single consistent stroke weight, modern style. On a transparent background.",
    "n": 1,
    "size": "1024x1024",
    "background": "transparent",
    "output_format": "png"
}).encode()

req = urllib.request.Request(url, data=payload, headers={
    "Content-Type": "application/json",
    "Authorization": f"Bearer {OPENAI_API_KEY}"
})

resp = urllib.request.urlopen(req, timeout=120)
result = json.loads(resp.read())

img_data = base64.b64decode(result["data"][0]["b64_json"])
with open("icon-wrench.png", "wb") as f:
    f.write(img_data)
print(f"Saved: icon-wrench.png ({len(img_data):,} bytes)")
PYEOF

GPT Image 2 - テキスト重視またはバリエーション バッチ

テキストが読み取り可能にレンダリングされる必要がある場合、または 1 回のコールで 10 バリエーションが必要な場合は、gpt-image-2 を使用してください。透明化なし - 透明背景が必要な場合は、上記の 1.5 を使用してください。

python3 << 'PYEOF'
import json, base64, urllib.request, os, sys, pathlib

OPENAI_API_KEY = os.environ.get("OPENAI_API_KEY")
if not OPENAI_API_KEY:
    print("Set OPENAI_API_KEY environment variable"); sys.exit(1)

url = "https://api.openai.com/v1/images/generations"

# 描画されたテキスト付き価格カードの 10 バリエーション バッチ
payload = json.dumps({
    "model": "gpt-image-2",
    "prompt": (
        "A modern pricing card for a web hosting plan. "
        "Headline 'Starter' in bold sans-serif. "
        "Price '$29/month' directly below in large type. "
        "Three feature lines: 'Unlimited bandwidth', 'SSD storage', 'Free SSL'. "
        "Clean flat design, soft drop shadow, deep blue accent colour. "
        "White card on light grey background."
    ),
    "n": 10,
    "size": "1024x1024",
    "quality": "medium",
    "output_format": "png"
}).encode()

req = urllib.request.Request(url, data=payload, headers={
    "Content-Type": "application/json",
    "Authorization": f"Bearer {OPENAI_API_KEY}"
})

# タイムアウト: 複雑なプロンプトで最大 2 分
resp = urllib.request.urlopen(req, timeout=180)
result = json.loads(resp.read())

pathlib.Path("variations").mkdir(exist_ok=True)
for i, item in enumerate(result["data"], 1):
    img_data = base64.b64decode(item["b64_json"])
    path = f"variations/pricing-card-{i:02d}.png"
    with open(path, "wb") as f:
        f.write(img_data)
    print(f"Saved: {path} ({len(img_data):,} bytes)")

print(f"\nGenerated {len(result['data'])} variants. Pick the best; delete the rest.")
PYEOF

バッチ ワークフロー: 10 枚生成 → 並べて確認 → 1-2 枚を選択 → オプションで、勝利した方向でより厳密なプロンプトで再生成。単一ショット + イテレーションより高速。

4. 保存と最適化

生成された画像を .jez/artifacts/ またはユーザーが指定したパスに保存してください。

後処理 (オプション):

# Web 使用用に WebP に変換
python3 -c "
from PIL import Image
img = Image.open('hero-image.png')
img.save('hero-image.webp', 'WEBP', quality=85)
print(f'WebP: {img.size[0]}x{img.size[1]}')
"

# 透明なアイコンから空白をトリミング
python3 -c "
from PIL import Image
img = Image.open('icon.png')
trimmed = img.crop(img.getbbox())
trimmed.save('icon-trimmed.png')
"

5. 品質確認 (オプション)

生成された画像を Vision モデルに送り返して QA を行います:

# QA のために Gemini Flash に送信
critique_prompt = """Review this image for:
1. AI artifacts (extra fingers, floating objects, text errors)
2. Technical accuracy (wrong equipment, unsafe positioning)
3. Composition issues (awkward cropping, cluttered background)
4. Style consistency with a professional stock photo

List any issues found, or say 'PASS' if the image is production-ready."""

問題が見つかった場合は、元のプロンプトに負のガイダンスとして追加し、再生成してください。

マルチターン編集

Gemini は、会話ターン全体で生成された画像の編集をサポートしています。重要な要件: モデル レスポンスからの thought signature を保持してください

# ターン 1: ベース画像を生成
contents = [{"role": "user", "parts": [{"text": "Scene prompt..."}]}]

# レスポンスには parts の thoughtSignature が含まれます - すべて保持してください

# ターン 2: 画像を編集
contents = [
    {"role": "user", "parts": [{"text": "Original prompt"}]},
    {"role": "model", "parts": response_parts_with_signatures},  # そのまま保持
    {"role": "user", "parts": [{"text": "Edit: change the wall colour to blue. Keep everything else exactly the same."}]}
]

編集プロンプト パターン: 変更することだけを指定するのではなく、常に何を KEEP するかを指定してください。モデルは未記載の要素は自由に変更できると扱います。

良い例: 「この画像を編集してください: 人物、机、窓は変更しないでください。
変更のみ: 壁の色を陶土色から海の青に。」

悪い例: 「では壁を青くしてください。」
(モデルは他のすべても変更する可能性があります)

API キー セットアップ

プロバイダ取得場所環境変数
Google Geminiaistudio.google.comGEMINI_API_KEY
OpenAIplatform.openai.comOPENAI_API_KEY
export GEMINI_API_KEY="your-key-here"
export OPENAI_API_KEY="your-key-here"

一般的なミス

ミス修正
Gemini プロンプトに curl を使用Python を使用してください - シェル エスケープはアポストロフィで破損します
「美しい、プロフェッショナル、高品質」具体的な仕様を使用してください: 「85mm f/1.8、ゴールデンアワーライト」
除外すべきものを指定しない常に「テキストなし、透かしなし、ロゴなし」で終了してください
Gemini に透明 PNG をリクエストGemini は透明化をサポートできません - background: "transparent" を使用して gpt-image-1.5 を使用してください
GPT Image 2 に透明 PNG をリクエストGPT Image 2 は透明化をサポートできません - このケースのみ gpt-image-1.5 にフォールバックしてください
GPT Image 1.5 を画像上のテキストに使用GPT Image 1.5 テキスト レンダリングは信頼性がありません - 読み取り可能なテキストには gpt-image-2 を使用してください
GPT Image 2 へのリクエストをブロック複雑なプロンプトで生成に最大 2 分かかります - 180s タイムアウトを使用し、非同期 UI を構築してください
AU ビジネスのアメリカンデフォルト明示的に「オーストラリア」 + 現地の建築、植生を指定してください
モデル ID 用の汎用データ現在のモデル ID を確認してください - 頻繁に変更されます

ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
jezweb
リポジトリ
jezweb/claude-skills
ライセンス
MIT
最終更新
不明

Source: https://github.com/jezweb/claude-skills / ライセンス: MIT

関連スキル

OpenAILLM・AI開発⭐ リポ 6,054

agent-browser

AI エージェント向けのブラウザ自動化 CLI です。ウェブサイトとの対話が必要な場合に使用します。ページ遷移、フォーム入力、ボタンクリック、スクリーンショット取得、データ抽出、ウェブアプリのテスト、ブラウザ操作の自動化など、あらゆるブラウザタスクに対応できます。「ウェブサイトを開く」「フォームに記入する」「ボタンをクリックする」「スクリーンショットを取得する」「ページからデータを抽出する」「このウェブアプリをテストする」「サイトにログインする」「ブラウザ操作を自動化する」といった要求や、プログラマティックなウェブ操作が必要なタスクで起動します。

by JimmyLv
汎用LLM・AI開発⭐ リポ 1,982

anyskill

AnySkill — あなたのプライベート・スキルクラウド。GitHubを基盤としたリポジトリからエージェントスキルを管理、同期、動的にロードできます。自然言語でクラウドスキルを検索し、オンデマンドでプロンプトを自動ロード、カスタムスキルのアップロードと共有、スキルバンドルの一括インストールが可能です。OpenClaw、Antigravity、Claude Code、Cursorに対応しています。

by LeoYeAI
汎用LLM・AI開発⭐ リポ 1,982

engram

AIエージェント向けの永続的なメモリシステムです。バグ修正、意思決定、発見、設定変更の後はmem_saveを使用してください。ユーザーが「覚えている」「記憶している」と言及した場合、または以前のセッションと重複する作業を開始する際はmem_searchを使用します。セッション終了前にmem_session_summaryを使用して、コンテキストを保持してください。

by LeoYeAI
汎用LLM・AI開発⭐ リポ 21,584

skyvern

AI駆動のブラウザ自動化により、任意のウェブサイトを自動化できます。フォーム入力、データ抽出、ファイルダウンロード、ログイン、複数ステップのワークフロー実行など、ユーザーがウェブサイトと連携する必要があるときに使用します。Skyvernは、LLMとコンピュータビジョンを活用して、未知のサイトも自動操作可能です。Python SDK、TypeScript SDK、REST API、MCPサーバー、またはCLIを通じて統合できます。

by Skyvern-AI
汎用LLM・AI開発⭐ リポ 1,149

pinchbench

PinchBenchベンチマークを実行して、OpenClawエージェントの実世界タスクにおけるパフォーマンスを評価できます。モデルの機能テスト、モデル間の比較、ベンチマーク結果のリーダーボード提出、またはOpenClawのセットアップがカレンダー、メール、リサーチ、コーディング、複数ステップのワークフローにどの程度対応しているかを確認する際に使用します。

by pinchbench
汎用LLM・AI開発⭐ リポ 4,693

openui

OpenUIとOpenUI Langを使用してジェネレーティブUIアプリを構築できます。これらはLLM生成インターフェースのためのトークン効率的なオープン標準です。OpenUI、@openuidev、ジェネレーティブUI、LLMからのストリーミングUI、AI向けコンポーネントライブラリ、またはjson-render/A2UIの置き換えについて述べる際に使用します。スキャフォルディング、defineComponent、システムプロンプト、Renderer、およびOpenUI Lang出力のデバッグに対応しています。

by thesysdev
本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: jezweb · jezweb/claude-skills · ライセンス: MIT