Agent Skills by ALSEL
汎用デザイン・クリエイティブ⭐ リポ 4品質スコア 71/100

nanobanana

Nano Banana(Gemini画像生成)を使用して、画像の生成と編集ができます。ユーザーが画像の作成、ビジュアルの生成、写真の編集、デザインモックアップの制作、サムネイルの作成、ロゴの生成、ヒーロー画像の制作、またはコードベースへのNano Bananaの統合を希望する場合に活用できます。

description の原文を見る

Generate and edit images using Nano Banana (Gemini image generation). Use when users want to create images, generate visuals, edit photos, design mockups, produce thumbnails, create logos, make hero images, or integrate Nano Banana into their codebase.

SKILL.md 本文

Nanobanana — Nano Banana イメージ生成

Google の Nano Banana (Gemini イメージ生成 API) を使用して、画像を生成・編集します。このスキルは、直接的な画像生成、反復的な編集、およびコードベースへの API 統合に関する専門的なガイダンスを提供します。

主な特徴: ユーザーの意図とプロジェクト コンテキストを分析し、API 呼び出しの前に最適化されたプロンプトを作成するプロンプト強化システムです。


フェーズ 0: 環境確認

その他の処理に先立ち、環境が準備できていることを確認します。

1. API キーを確認:

echo "${GEMINI_API_KEY:0:10}..."  # Show first 10 chars only (security)

GEMINI_API_KEY が空または未設定の場合:

  • references/integration-guide.md (セットアップ セクション) を読む
  • ユーザーにセットアップ手順を提示する
  • キーが設定されるまでここで停止します

2. uv が利用可能か確認:

uv --version 2>&1

uv がインストールされていない場合は、ユーザーを https://docs.astral.sh/uv/getting-started/installation/ に案内して停止してください。uv は PEP 723 のインライン メタデータを使用して依存関係を自動的に処理します。手動で pip install を実行する必要はありません。


フェーズ 1: 意図を理解してモードを判定

会話から以下を抽出します:

  • 被写体/シーン: 画像に何が映っていますか?
  • 用途: 何のためですか? (ヒーロー画像、アイコン、モックアップ、ブログ記事など)
  • スタイル: フォトリアリスティック、イラスト、ミニマリスト など
  • 技術要件: アスペクト比、解像度、特定の寸法
  • ムード/雰囲気: エネルギッシュ、落ち着いた、プロフェッショナル、遊び心のある など

モード判定

エキスパート統合モード — ユーザーが Nano Banana をコードベースに統合したい場合 (例: 「アプリに画像生成を追加するにはどうすればいい?」「API を見せて」「画像を生成する機能を構築している」):

  • references/integration-guide.md を読む
  • SDK の例、認証パターン、本番環境のベストプラクティスを提供する
  • ガイダンスにスキップ — API を呼び出さない

生成モード — ユーザーが今すぐ画像を生成したい場合:

  • フェーズ 2 に進む

プロジェクト コンテキストを分析 (生成モードのみ)

プロジェクト ディレクトリ内で起動された場合、プロンプトを改善するためにコンテキストを収集します:

# Identify project type
ls package.json pyproject.toml README.md 2>/dev/null | head -5
# Find project description
head -20 README.md 2>/dev/null || head -20 pyproject.toml 2>/dev/null
# Find existing images (identify style conventions)
find . -name "*.png" -o -name "*.jpg" -o -name "*.svg" 2>/dev/null | grep -v node_modules | head -10
# Find color schemes (Tailwind, CSS variables, theme files)
grep -r "primary\|brand\|#[0-9a-fA-F]\{6\}" --include="*.css" --include="*.ts" --include="*.json" -l 2>/dev/null | head -5

このコンテキストを使用して、生成された画像がプロジェクトのビジュアル言語に適合するようにします。

リクエスト タイプを分類

最も適切なカテゴリを選択します:

  • photorealistic — シーン、ポートレート、商品写真、風景
  • stylized — イラスト、アート、漫画、コンセプト アート
  • text-heavy — ポスター、バナー、テキスト付きインフォグラフィックス
  • product-marketing — 商業的な商品撮影
  • ui-mockup — アプリ画面、ウェブサイト デザイン、ワイヤーフレーム
  • diagram — テクニカル イラスト、フローチャート、アーキテクチャ
  • minimalist — 抽象的、ロゴ、アイコン コンセプト

不足している情報のみを質問

会話で既に提供されていない情報のみを質問してください。ユーザーが「SaaS アプリ向けのミニマリスト ロゴ」と言った場合、被写体 (ロゴ)、スタイル (ミニマリスト)、用途 (SaaS ブランディング) は既にわかっています。既にわかっていることは質問しないでください。


フェーズ 2: プロンプトを強化

リクエスト カテゴリに基づいて、references/prompt-engineering.md から関連するセクションを読みます。

強化プロセス

カテゴリ固有の強化を適用します:

カテゴリプロンプトに追加
photorealisticカメラアングル、レンズタイプ、ライティング設定、被写界深度、雰囲気
stylizedアート スタイル、品質レベル、シェーディング手法、カラー パレット参照
text-heavy引用符内の正確なテキスト、フォント スタイル、ウェイト、色、配置
product-marketingスタジオ ライティング設定、表面素材、背景タイプ
ui-mockupデバイス フレーム、デザイン言語、既知のプロジェクト色
diagramダイアグラムタイプ、カラー コード方式、ラベル スタイル、クリーンな線
minimalist背景色 (正確に)、要素の配置、サイズの割合

フェーズ 1 で見つかったプロジェクト コンテキスト (ブランドカラー、デザイン システム、ドメイン) を組み込みます。

強化されたプロンプトを承認のために提示

生成の前に必ず表示します。このステップをスキップしないでください。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 プロンプト確認
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
元のプロンプト: [ユーザーの元のプロンプト]

強化されたプロンプト: [追加が含まれた改善されたプロンプト]

変更内容:
  + [追加されたもの]
  + [追加された理由]

モデル:    [選択されたモデル名]
アスペクト比:   [例: 16:9]
解像度: [例: 2K]
推定コスト: ~$[推定値]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
強化されたプロンプトで進みますか? (yes / modify / use original)

ユーザーが変更したい場合、強化されたプロンプトを更新し、進める前に確認ブロックを再度表示します。


フェーズ 3: モデルとパラメータを選択

デフォルト: Nano Banana 2 (gemini-3.1-flash-image-preview) を 2K 解像度で使用します。

詳細については references/model-guide.md を参照してください。クイック リファレンス:

ユースケースモデル解像度
クイック ドラフト/反復処理gemini-2.5-flash-image512 または 1K
ほとんどの本番資産 (デフォルト)gemini-3.1-flash-image-preview2K
テキスト重視の画像gemini-3-pro-image-preview2K–4K
プリント/高 DPIgemini-3-pro-image-preview4K

ユースケース別のアスペクト比のデフォルト:

  • ヒーロー/バナー: 16:9
  • プロフィール/アバター: 1:1
  • ストーリー/モバイル: 9:16
  • ポートレート/ピン: 2:3
  • 標準ウェブ: 4:3

モデルと解像度の選択を常にフェーズ 2 の確認ブロックの一部としてユーザーに提示し、ユーザーが上書きできるようにします。


フェーズ 4: 画像を生成

出力パスを決定します (指定されていない場合はデフォルトで ./generated-image.png を使用するか、./hero-image.png./logo-concept.png などの文脈に適した名前を使用します)。

テキストから画像へ

uv run "$(dirname "$0")/scripts/generate.py" \
  --prompt "ENHANCED_PROMPT_HERE" \
  --model "MODEL_ID_HERE" \
  --aspect-ratio "ASPECT_RATIO_HERE" \
  --resolution "RESOLUTION_HERE" \
  --output "OUTPUT_PATH_HERE"

画像編集 (ユーザーが既存の画像を提供する場合)

uv run "$(dirname "$0")/scripts/generate.py" \
  --prompt "EDIT_INSTRUCTION_HERE" \
  --input-image "INPUT_IMAGE_PATH_HERE" \
  --model "MODEL_ID_HERE" \
  --aspect-ratio "ASPECT_RATIO_HERE" \
  --resolution "RESOLUTION_HERE" \
  --output "OUTPUT_PATH_HERE"

JSON 出力を解析

スクリプトは JSON オブジェクトを出力します。各ケースを解析および処理します:

成功:

{"status": "success", "output_path": "/abs/path/image.png", "model_used": "...", "text_response": "...", "size_bytes": 245760}

→ ファイル パスを報告します。プラットフォームがインライン表示をサポートしている場合は、画像ファイルで Read を使用します。

エラー ケース:

error_code意味対応
CONTENT_POLICYプロンプトが安全フィルターでブロックされた言い回しを変更するよう提案し、機密要素を削除する
RATE_LIMITAPI クォータを超過した再試行前に待機し、低コストモデルの使用を提案する
AUTH_ERRORAPI キーが無効または見つからないユーザーを references/integration-guide.md のセットアップ セクションに案内する
NO_IMAGE_GENERATEDモデルが画像を返さなかったプロンプトを言い換えるか、別のモデルを試す
DEPENDENCY_ERRORgoogle-genai がインストールされていないuv が利用可能であることを確認し、uv run が PEP 723 メタデータを使用して依存関係を自動的に処理します
FILE_NOT_FOUND入力画像パスが無効パスを確認して再実行する

フェーズ 5: 反復 (オプション)

成功した生成の後、ユーザーのフィードバックに基づいて反復オプションを提供します:

軽微な調整 (色、明るさ、小さな構成変更): → 画像編集モード を使用 — 前の出力を --input-image として渡す

大きな変更 (まったく異なる被写体、スタイル変更): → 強化されたプロンプトを変更し、最初から再生成 します

迅速な探索 (複数のコンセプトをテスト): → すべての反復に gemini-2.5-flash-image512 解像度で使用する → 勝利するコンセプトを特定し、gemini-3.1-flash-image-preview2K で再生成する

反復編集セッション では、ユーザーが必要に応じて以前のバージョンに戻せるようにプロンプトの進化を追跡します。


エキスパート統合モード

ユーザーがコードベースに画像生成を追加したい場合:

  1. references/integration-guide.md を読む
  2. ユーザーのテック スタック (Python、JavaScript/TypeScript、REST API が必要) を特定する
  3. ガイドから関連する SDK の例を提供する
  4. 例をプロジェクト構造にカスタマイズします:
    • Python FastAPI/Flask → エンドポイントとして表示
    • Next.js → API ルートとして表示
    • プレーン スクリプト → スタンドアロン関数として表示
  5. ガイドの重要な本番環境の懸念事項を強調します:
    • API キーをフロントエンドで公開しない
    • ユーザーごとにレート制限を実装
    • プロンプト ハッシュでキャッシュ
    • 429 を指数バックオフで処理
  6. プロジェクト タイプに適した環境変数セットアップを提案します

リファレンス ファイル

  • references/prompt-engineering.md — 写真用語、スタイル ガイド、カテゴリ別のスパース→リッチ例
  • references/model-guide.md — モデル比較、価格、レート制限、解像度オプション
  • references/integration-guide.md — SDK の例 (Python/JS/REST)、セットアップ、本番環境のベストプラクティス
  • scripts/generate.py — リトライ ロジックと JSON 出力を備えたコア API コーラー
  • scripts/requirements.txtgoogle-genai>=1.0.0

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

詳細情報

作者
mgiovani
リポジトリ
mgiovani/cc-arsenal
ライセンス
MIT
最終更新
2026/4/21

Source: https://github.com/mgiovani/cc-arsenal / ライセンス: MIT

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