Skip to main content
このページでは、すぐに使えるAgent Skillを提供しています。普段お使いのコーディングAgentに組み込むだけで、自然言語(または明示的なコマンド)を使用してAPIYIプラットフォーム上のNano Banana 2.1(gemini-nano-banana-2.1)を呼び出し、画像生成や編集を行えます。構成はわずか2つのファイルのみで、コピーしてすぐに使い始められます。
代わりにProスキル(gemini-3-pro-image、最高峰のクオリティ)をご希望の場合は、Nano Banana Pro Agent Skillをご覧ください。本ページで扱うのはNano Banana 2.1(画質とテキストレンダリングが向上したNano Banana 2のアップグレード版)です。以前のバージョンをお使いの場合は、Nano Banana 2 Agent Skillをご覧ください。

スキルの機能

統合された単一のスキルです。スクリプトが入力画像を渡したかどうかを自動検出し、テキストからの画像生成と画像編集のどちらを実行するかを判断します:

テキストからの画像生成

promptのみ → 14種類のアスペクト比と1K/2K/4K解像度に対応した、まったく新しい画像を生成。

画像編集

画像1枚 + 指示 → 部分編集、スタイル変換、背景の置き換えなど。

複数画像の合成

複数画像 + 1つの指示 → 合成、比較、衣装の変更など。
Proと比較して、Nano Banana 2.1では4つの超縦長/超横長アスペクト比(1:4 / 4:1 / 1:8 / 8:1)が追加され、1回の呼び出しあたりわずか$0.05/画像(1K / 2K / 4K共通価格)で利用できるため、大量処理に適しています。なお、512pxには対応していません。サムネイル用の階層が必要な場合はNano Banana 2をご利用ください。

どのAgentが利用できるか

Skillは本質的に単なるフォルダーです。Agentが読み取る一連の指示(SKILL.md)と、実際の処理を行うスクリプトで構成されています。そのため、ローカルファイルを読み取ってシェルコマンドを実行できるコーディングAgentであれば、どれでも利用可能です。たとえば、Codex、OpenClaw、hermes-agent、Claude Codeなどが挙げられます。唯一の要件は、Agentを実行するマシン(お使いのコンピューターまたはサーバー)にPython 3がインストールされており、ネットワークアクセスがあること(スクリプトがapi.apiyi.comを直接呼び出します)だけです。これだけであり、特定のAgentに依存することはありません。

3つのステップでセットアップ

① フォルダを作成してファイルを配置する

次の2つのファイルを含むスキルフォルダを作成します(完全な内容は次の2つのセクションに記載されています):

② 同じフォルダにキーを配置する

APIYI API Key(api.apiyi.comコンソールで作成)をnano-banana-2-1/.envに書き込みます:
スクリプトはこの.envからキーを自動的に読み取ります。追加の設定や環境変数は不要です。
.envにはシークレットキーが保持されます。このスキルをプロジェクトリポジトリ経由で共有する場合は、必ず.envを.gitignoreに追加し、絶対にgitへコミットしないでください。

③ エージェントに渡す

  • スキルを自動検出するエージェント(Claude Codeなど):nano-banana-2-1/フォルダ全体をそのスキルディレクトリ(個人用の~/.claude/skills/、またはリポジトリ経由で共有するプロジェクトレベルの.claude/skills/)に配置します。
  • その他のエージェント:各エージェント独自のスキル/プラグインの規則に従って配置します。あるいは最も簡単な方法として、「このフォルダにあるSKILL.mdを読み込んで、それに従ってください」とエージェントに指示するだけです。
インストールが完了すれば準備完了です。具体例については使い方をご覧ください。

SKILL.md

以下のすべての内容を含めて nano-banana-2-1/SKILL.md を作成します(description には「何をするのか + いつ使用するのか」を記述し、エージェントはこれをもとに自動トリガーを行います):
name は小文字の英字 + ハイフンで構成する必要があり、claude / anthropic などの予約語を含めてはなりません。スラッシュコマンドをサポートするエージェントでは、ディレクトリ名がコマンドになります(nano-banana-2-1 は /nano-banana-2 になります)。${CLAUDE_SKILL_DIR} は Claude Code から提供されるスキルディレクトリ変数です。他のエージェントではスクリプトの実際のパスを使用してください。

scripts/nano_banana_2_1.py

Geminiネイティブ形式を使用してnano-banana-2-1/scripts/nano_banana_2_1.pyを作成します(APIYIのテキストから画像生成 / 画像編集リファレンスページにある、検証済みの動作するコードと同じです)。純粋なPython標準ライブラリ — pip installは不要です:
デフォルトのモデル名はgemini-nano-banana-2.1です。一時的に以前のバージョンへ切り替えるには、APIYI_IMAGE_MODEL=gemini-3.1-flash-imageを設定してください(以前のバージョンは--size 512もサポートしています)。

なぜ一文で画像が生成されるのか

「コマンドを入力した覚えはないのに、なぜ『猫を描いて』だけで画像が生成されたのだろう?」と疑問に思う方は少なくありません。 仕組みは以下のとおりです。起動時に、Agentはまず各スキルのSKILL.mdからdescriptionを読み込みます(「このスキルが何を行い、いつ使用するか」を説明する非常に短いメタデータです)。リクエストがそのシナリオに一致すると(例:「画像を描く/生成する/レンダリングする」、「この画像を〜に編集する」など)、Agentはスキルの呼び出しを自動的に判断し、完全なSKILL.mdを読み込んでスクリプトを実行します。ユーザーがコマンドを覚えておく必要は一切ありません。 つまり:
  • 適切に記述されたdescription = より正確な自動トリガー。 このスキルの説明には、「画像を生成/描画/編集/合成する」といった表現がすでに網羅されています。
  • Agentの推測に頼らず完全に制御したい場合は、以下の明示的な呼び出しを使用してください。

使用方法

自然言語(暗黙的トリガー)

インストール後は、Agentに話しかけるだけです:

明示的な呼び出し(より詳細な制御)

Agentに自動で判断させたくない場合は、2つの明示的な方法があります:
  • スラッシュコマンドをサポートするAgent(例:Claude Code):
  • 任意のAgent / スクリプトの実行を直接指示(最も汎用的な方法):
アスペクト比と鮮明度の制御方法:アスペクト比には--aspectを使用し(Proにはない1:4 / 4:1 / 1:8 / 8:1の超縦長・超横長を含む14の選択肢)、解像度には--sizeを使用します(1K / 2K / 4K。512は非対応)。「縦向き 9:16」、「4Kでレンダリング」、「超ワイドバナーを作成」と伝えるだけで、Agentがこれらのフラグを自動的に追加します。

生成された画像の保存先

  • -o がファイル名のみ(例: -o dog.png)の場合、画像はすべてプロジェクトルートの nano-banana-2-1-output/ フォルダ(自動作成)に保存されるため、プロジェクト内ですぐに見つけることができます。
  • 「プロジェクトルート」とは、スクリプト自身の場所から上位ディレクトリへと遡って最初に見つかる .git または .claude を含むディレクトリのことです。そのため、Agent がどのディレクトリから実行されても、画像は確実にプロジェクト内に保存され、見つからない一時ディレクトリに保存されることはありません。
  • スクリプトは画像ごとに1つの完全な絶対パスを出力します(例: Image saved to /Users/you/project/nano-banana-2-1-output/dog.png)。
  • デフォルトでは1枚の画像のみを生成します。-n 3 は一度に3枚を生成し(最大5枚、それ以上は5枚に制限されます)、自動的に -1、-2、-3 のサフィックスが付加されます。
  • -o がディレクトリを含むパス(例: -o images/dog.png や絶対パス)の場合、その指定された正確なパスに保存され(相対パスは現在の作業ディレクトリ基準となります)、nano-banana-2-1-output/ には保存されません。
  • 画像編集も同様に動作します。出力は新しいファイルとなり、元のファイルが上書きされることはありません。
Nano Banana 2.1 には厳格なコンテンツ安全性制御が備わっています。スクリプトが STOP 以外の finishReason を報告した場合や拒否メッセージを返した場合は、内容を適切に調整し、違反となる同じ prompt を何度も再試行しないでください。

関連ドキュメント