このページでは、すぐに使えるAgent Skillを提供します。すでに使っているコーディングAgentにそのまま入れて、自然言語(または明示的なコマンド)で APIYI プラットフォーム上の Nano Banana 2(
gemini-3.1-flash-image-preview)を呼び出し、画像生成と編集を行えます。必要なのはたった2つのファイルだけです。コピーしてすぐ使えます。このスキルの機能
単一の統合スキルです。スクリプトが入力画像を渡したかどうかを自動判定し、テキストから画像生成と画像編集を切り替えます。テキストから画像生成
プロンプトのみ → 完全に新しい画像を生成。14種類のアスペクト比と 512/1K/2K/4K の解像度に対応します。
画像編集
1枚の画像 + 指示 → ローカル編集、スタイル変更、背景置換などを行えます。
マルチ画像合成
複数画像 + 1つの指示 → 合成、比較、服装の差し替えなどができます。
1:4 / 4:1 / 1:8 / 8:1)と、専用の512px低解像度階層を追加し、1回あたりわずか $0.055/image です(token ベースでは最安で約 $0.025/image)— 大量利用により適しています。
どのエージェントが使用できるか
Skill は本質的には単なる フォルダ です。Agent が読むための指示一式(
SKILL.md)と、実際の処理を行うスクリプトで構成されています。つまり、ローカルファイルを読み取り、シェルコマンドを実行できる どのコーディング Agent でも使用できます。たとえば Codex, OpenClaw, hermes-agent, Claude Code などです。必要条件は1つだけです。Agent を実行するマシン(あなたのコンピューターまたはサーバー)に Python 3 がインストールされていて、ネットワークアクセス があることです(スクリプトが api.apiyi.com を直接呼び出します)。それだけです。特定の Agent に依存するものではありません。3ステップでセットアップ
① フォルダを作成してファイルを貼り付ける
次の2つのファイルを含むスキルフォルダを作成します(全文は次の2セクションにあります):② 同じフォルダにキーを入れる
api.apiyi.com コンソールで作成した APIYI API Key を nano-banana-2/.env に書き込みます:
.env からキーを自動的に読み取ります — 追加の設定や環境変数は不要です。
③ エージェントに渡す
- スキルを自動検出するエージェント(例: Claude Code)の場合: フォルダ全体の
nano-banana-2/を、そのスキル用ディレクトリに置きます。個人用の~/.claude/skills/、またはリポジトリ経由で共有されるプロジェクトレベルの.claude/skills/のどちらでも構いません。 - その他のエージェント: それぞれのスキル/プラグインの規約に従って配置してください。最も簡単なのは、「このフォルダの SKILL.md を読んで、それに従ってください」とエージェントに伝えることです。
SKILL.md
以下の全文を使ってnano-banana-2/SKILL.md を作成してください(description は「何をするか + いつ使うか」を示し、これはエージェントが自動トリガーに使います):
scripts/nano_banana_2.py
Gemini-native 形式を使ってnano-banana-2/scripts/nano_banana_2.py を作成してください(APIYI のテキストから画像生成 / 画像編集リファレンスページで検証済みの動作コードと同一です)。Pure Python 標準ライブラリのみ — pip install は不要です:
なぜ 1 文だけで画像が生成されるのか
多くの人が疑問に思います。コマンドを一度も入力していないのに、どうして「draw a cat」で画像が生成されたのでしょうか? 仕組みはこうです。起動時に、Agent は各スキルのSKILL.mdからdescriptionを最初に読み取ります(これは「このスキルが何を行い、いつ使うか」を説明する、とても短いメタデータです)。あなたのリクエストがその状況に一致すると(例: 「画像を draw / generate / render する」「この画像を…に編集する」)、Agent は自動的にそのスキルを呼び出すと判断し、SKILL.md全体を読み込み、スクリプトを実行します。コマンドを覚えている必要はありません。
つまり:
- よく書かれた
description= より正確な自動起動。 このスキルの説明には、すでに「画像を generate / draw / edit / composite する」といった言い回しが含まれています。 - Agent に推測させたくなく、完全に制御したい場合は、以下の明示的な呼び出しを使ってください。
使い方
自然言語(暗黙トリガー)
インストールしたら、エージェントに話しかけるだけです:明示的な呼び出し(より細かく制御)
エージェントに自動判断させたくない場合は、明示的な方法が 2 つあります。-
スラッシュコマンドに対応するエージェント(例: Claude Code):
-
任意のエージェント / スクリプトを実行するよう伝えるだけ(最も汎用的):
生成された画像の保存先
-oが ベアファイル名(例:-o dog.png)の場合、画像はすべて プロジェクトルート直下のnano-banana-output/フォルダ に自動作成されて保存されるため、プロジェクト内のその場所ですぐ見つけられます。- 「プロジェクトルート」は、スクリプト自身の場所から親ディレクトリへたどって見つかる
.gitまたは.claudeを含む最初のディレクトリです。そのため、Agent がどのディレクトリから実行されても、画像はプロジェクト内に保存され、見つけられない一時ディレクトリに入ることはありません。 - スクリプトは画像ごとに絶対パスを 1 つずつ完全な形で出力します。たとえば
Image saved to /Users/you/project/nano-banana-output/dog.pngです。 - デフォルトでは 1 枚だけ 生成されます。
-n 3は一度に 3 枚生成し(最大 5 枚で、それ以上は 5 に丸められます)、-1、-2、-3の接尾辞が自動で追加されます。 -oが ディレクトリを含むパス(例:-o images/dog.pngや絶対パス)の場合は、その正確なパスに保存されます(相対パスは現在の作業ディレクトリからの相対パスです)ので、nano-banana-output/には入りません。- 画像編集も同じ仕組みで動作します。出力は新しいファイルになり、元のファイルは上書きしません。
Nano Banana 2 には厳格なコンテンツ安全対策があります。スクリプトが
finishReason を返し、それが STOP 以外であったり、拒否テキストを返したりした場合は、内容を調整し、同じ違反するプロンプトを繰り返し再試行しないでください。