AgentSkillsCN

image-creator

利用Google Gemini、OpenAI GPT Image或ZhipuAI GLM-Image的图像生成模型,生成并编辑图像。“生成图像”、“创作插画”、“编辑这张图像”等指令都会自动触发使用。“制作几张贴纸”、“生成多个图标并进行拆分”等操作,也支持贴纸页的生成与拆分。您可以从Gemini(Nano Banana)、OpenAI(gpt-image-1.5)以及GLM-Image(ZhipuAI)这三家提供商中自由选择。

SKILL.md
--- frontmatter
name: image-creator
description: Google Gemini、OpenAI GPT Image、またはZhipuAI GLM-Imageの画像生成モデルで画像を生成・編集。「画像を生成して」「イラストを作って」「この画像を編集して」などの指示で自動的に使用される。「ステッカーを何個か作って」「複数のアイコンを生成して分割」などステッカーシート生成・分割にも対応。Gemini(Nano Banana)とOpenAI(gpt-image-1.5)とGLM-Image(ZhipuAI)の3つのプロバイダーから選択可能。
allowed-tools: Bash, Read, Write, AskUserQuestion

Image Creator - AI画像生成スキル

Google Gemini、OpenAI GPT Image、または ZhipuAI GLM-Image を使用して画像を生成・編集するスキル。


生成前の確認フロー

重要: 画像生成を開始する前に、必ず AskUserQuestion ツールで以下を確認すること。

確認項目

共通(常に確認):

項目選択肢説明
プロバイダーgemini / openai / glm-image使用するAIプロバイダー
モデルGemini: pro/flash、OpenAI: 1.5/1/mini、GLM-Image: glm-image詳細は下記参照
参照画像あり / なしスタイルをコピーする元画像があるか
背景除去Vision API / マゼンタ除去 / OpenAI透過 / 不要方法は下記参照

複数画像生成の場合のみ追加で確認:

項目選択肢説明
生成方式シート→split / 並列生成シート→split推奨(効率的)

プロバイダー別の特徴

プロバイダー強みAPIキー環境変数
Gemini日本語プロンプト、参照画像のスタイルコピーGEMINI_API_KEY
OpenAI高品質、ネイティブ透過背景対応、複数枚同時生成OPENAI_API_KEY
GLM-Imageテキスト描画精度91.16%、日本語・中国語プロンプト、低コストGLM_API_KEY or ZAI_API_KEY

モデル比較

Gemini:

モデルID特徴
Flashgemini-2.5-flash-image高速、コスト効率
Progemini-3-pro-image-preview高品質、複雑な指示に対応

OpenAI:

モデルID特徴
GPT Image 1.5gpt-image-1.5最新・最高品質(推奨)
GPT Image 1gpt-image-1標準モデル
GPT Image Minigpt-image-1-mini軽量・高速・低コスト

GLM-Image (ZhipuAI):

モデルID特徴
GLM-Imageglm-image16Bパラメータ、テキスト描画精度91.16%、$0.015/枚

背景除去方法の選び方

方法適したケースプロバイダー
OpenAI透過OpenAI使用時は--background transparentで直接透過生成OpenAI専用
Vision API実写画像、写真風、複雑な背景、グラデーション背景Gemini
マゼンタ除去イラスト、シンプルな図形、線画、フラットデザインGemini

推奨設定

ケースプロバイダーモデル背景除去
透過アイコン・ステッカーOpenAI1.5--background transparent
参照画像のスタイルコピーGeminiproVision API
シンプルなイラストGeminiflashマゼンタ除去
高品質イラストOpenAI1.5不要 or transparent
プロトタイプ・テストOpenAImini不要
テキスト入り画像GLM-Imageglm-image不要
日本語/中国語重視GLM-Imageglm-image不要
低コスト大量生成GLM-Imageglm-image不要

ツール一覧

ツール説明
generate.pyGemini画像生成
generate_openai.pyOpenAI画像生成
generate_zhipu.pyGLM-Image画像生成(ZhipuAI)
remove-bg-magenta.pyマゼンタ背景除去(1px収縮含む)
remove-bg-vision.pyVision API背景除去
erode.py透過画像エッジ収縮
split_transparent.py透過画像を個別オブジェクトに分割

前提条件

  1. uv: curl -LsSf https://astral.sh/uv/install.sh | sh でインストール
  2. Gemini使用時: 環境変数 GEMINI_API_KEY を設定
  3. OpenAI使用時: 環境変数 OPENAI_API_KEY を設定
  4. GLM-Image使用時: 環境変数 GLM_API_KEY または ZAI_API_KEY を設定(https://z.ai で取得)
  5. Vision API: macOS 14.0 (Sonoma) 以降が必要

1. generate.py - Gemini画像生成

bash
uv run --with google-genai --with pillow scripts/generate.py "プロンプト" [オプション]

オプション

オプション説明デフォルト
-o, --output出力ファイルパスgenerated_image.png
-a, --aspect-ratioアスペクト比 (1:1, 16:9, 9:16, 4:3, 3:4)1:1
-m, --modelモデル (flash, pro)pro
--magenta-bgマゼンタ背景で生成なし
-r, --reference参照画像のパスなし

bash
# シンプルな生成
uv run --with google-genai --with pillow scripts/generate.py "かわいい猫のイラスト"

# 参照画像のスタイルをコピー
uv run --with google-genai --with pillow scripts/generate.py "Same exact style as this image. Object: coffee cup. NO text." -r reference.png -o coffee.png

# マゼンタ背景で生成(後で透過処理用)
uv run --with google-genai --with pillow scripts/generate.py "シンプルな星のアイコン" --magenta-bg -o star.png

2. generate_openai.py - OpenAI画像生成

bash
uv run --with openai --with pillow scripts/generate_openai.py "プロンプト" [オプション]

オプション

オプション説明デフォルト
-o, --output出力ファイルパスgenerated_image.png
-s, --sizeサイズ (1024x1024, 1536x1024, 1024x1536, auto)1024x1024
-m, --modelモデル (gpt-image-1, gpt-image-1-mini, gpt-image-1.5)gpt-image-1.5
-q, --quality品質 (low, medium, high)medium
-b, --background背景 (transparent, opaque, auto)auto
-f, --format出力形式 (png, jpeg, webp)png
-r, --reference編集する画像のパスなし
-n, --number生成枚数 (1-10)1

bash
# シンプルな生成
uv run --with openai --with pillow scripts/generate_openai.py "かわいい猫のイラスト"

# 透過背景で生成(背景除去不要)
uv run --with openai --with pillow scripts/generate_openai.py "シンプルな星のアイコン" -b transparent -o star.png

# 高品質・横長で生成
uv run --with openai --with pillow scripts/generate_openai.py "夕焼けの風景" -s 1536x1024 -q high -o sunset.png

# 複数枚同時生成
uv run --with openai --with pillow scripts/generate_openai.py "かわいい動物のアイコン" -n 5 -b transparent -o animals.png

# 画像編集
uv run --with openai --with pillow scripts/generate_openai.py "背景を夜空に変更" -r input.png -o edited.png

3. generate_zhipu.py - GLM-Image画像生成(ZhipuAI)

bash
uv run --with requests --with pillow scripts/generate_zhipu.py "プロンプト" [オプション]

オプション

オプション説明デフォルト
-o, --output出力ファイルパスgenerated_image.png
-s, --size画像サイズ(推奨7種)1280x1280
-q, --quality品質 (hd, standard)hd

推奨サイズ

サイズアスペクト比
1280x1280正方形
1568x1056横長
1056x1568縦長
1472x1088横長
1088x1472縦長
1728x960ワイド
960x1728トール

bash
# シンプルな生成
uv run --with requests --with pillow scripts/generate_zhipu.py "かわいい猫のイラスト"

# 横長サイズで技術図解
uv run --with requests --with pillow scripts/generate_zhipu.py "技術文書の図解" -s 1568x1056 -o diagram.png

# 高速生成(standard品質)
uv run --with requests --with pillow scripts/generate_zhipu.py "ロゴデザイン" -q standard -o logo.png

4. remove-bg-magenta.py - マゼンタ背景除去

マゼンタ/ピンク背景を色ベースで透過にする。

bash
uv run --with pillow --with numpy --with scipy scripts/remove-bg-magenta.py 入力画像 [-o 出力画像]

仕組み

  • R>180, G<100, B>100 の色を透過
  • 1px収縮でエッジのピンク残りを除去

5. remove-bg-vision.py - Vision API背景除去

macOS Vision APIで背景を自動検出して透過にする。

bash
python3 scripts/remove-bg-vision.py 入力画像 [-o 出力画像]

Note: このスクリプトは内部でremove-bg.swiftを呼び出すため、追加依存なしで動作。

特徴

  • 前景を自動検出
  • 参照画像のスタイル(背景含む)を維持した画像に最適
  • macOS 14.0以降が必要

6. erode.py - エッジ収縮

透過画像のエッジを任意のピクセル数だけ収縮する。

bash
uv run --with pillow --with numpy --with scipy scripts/erode.py 入力画像 [-o 出力画像] [-i 収縮量]
オプション説明デフォルト
-o, --output出力画像パス入力を上書き
-i, --iterations収縮量(ピクセル数)1

7. split_transparent.py - 透過画像分割

透過PNGを個別オブジェクトに分割(ステッカーシート用)。

bash
uv run --with opencv-python --with numpy scripts/split_transparent.py 入力画像 [出力ディレクトリ]

仕組み

  • アルファチャンネル(透明部分)で境界を検出
  • 連結成分ごとに切り出し
  • 左上→右下の順で番号付け

ワークフロー例

OpenAI: 透過アイコン生成(推奨・最も簡単)

bash
# 1ステップで透過PNG生成
uv run --with openai --with pillow scripts/generate_openai.py "シンプルな星のアイコン" -b transparent -o star.png

OpenAI: 複数アイコン同時生成

bash
# 5枚同時に透過PNG生成
uv run --with openai --with pillow scripts/generate_openai.py "かわいい動物のアイコン、1つの動物" -n 5 -b transparent -o animal.png
# → animal_01.png, animal_02.png, ... が生成される

GLM-Image: テキスト入り画像生成

bash
# テキスト描画精度91.16%で文字入りの画像を生成
uv run --with requests --with pillow scripts/generate_zhipu.py "「祝・開店」と書かれた和風バナー" -o banner.png

# 高速生成(standard品質)
uv run --with requests --with pillow scripts/generate_zhipu.py "技術ブログのヘッダー画像" -s 1728x960 -q standard -o header.png

Gemini: 透過ステッカー生成(単純なオブジェクト)

bash
# 1. マゼンタ背景で生成
uv run --with google-genai --with pillow scripts/generate.py "シンプルな星のアイコン" --magenta-bg -o star.png

# 2. マゼンタ除去
uv run --with pillow --with numpy --with scipy scripts/remove-bg-magenta.py star.png

Gemini: 参照画像スタイルコピー + 透過

bash
# 1. 参照画像のスタイルで生成(スタイル維持のためマゼンタ指定なし)
uv run --with google-genai --with pillow scripts/generate.py "Same exact style as this image. Object: coffee cup. NO text." -r reference.png -o coffee.png

# 2. Vision APIで背景除去
python3 scripts/remove-bg-vision.py coffee.png

Gemini: ステッカーシート生成 → 分割

bash
# 1. マゼンタ背景で複数ステッカー生成
uv run --with google-genai --with pillow scripts/generate.py \
  "Multiple separate kawaii stickers with LARGE gaps: coffee cup, donut, cat, star. Arranged in 2x2 grid, well separated." \
  --magenta-bg -o sheet.png

# 2. 背景透過
uv run --with pillow --with numpy --with scipy scripts/remove-bg-magenta.py sheet.png

# 3. 個別分割
uv run --with opencv-python --with numpy scripts/split_transparent.py sheet.png ./stickers/

プロンプトのコツ:

  • LARGE gaps between them - 間隔を広く
  • well separated - 重ならないように
  • Arranged in XxY grid - グリッド配置指定

ファイル構成

code
image-creator/
├── SKILL.md               # このドキュメント
└── scripts/
    ├── generate.py            # Gemini画像生成
    ├── generate_openai.py     # OpenAI画像生成
    ├── generate_zhipu.py      # GLM-Image画像生成(ZhipuAI)
    ├── remove-bg-magenta.py   # マゼンタ背景除去(1px収縮含む)
    ├── remove-bg-vision.py    # Vision API背景除去
    ├── remove-bg.swift        # Vision API実装(Swift)
    ├── erode.py               # エッジ収縮(単体)
    └── split_transparent.py   # 透過画像分割