Skip to main content
Эта страница предлагает готовый к использованию Agent Skill: один скрипт охватывает все три канала — gpt-image-2 (официальный), gpt-image-2-all и gpt-image-2-vip (реверсный). Все они используют один и тот же OpenAI Images API; отличается только --model. Просто добавьте его в используемый вами coding Agent и генерируйте изображения одним prompt — всего два файла.

Что делает навык

Один объединенный навык. Скрипт автоматически определяет передаете ли вы входные изображения, чтобы выбрать между генерацией изображений по тексту и редактированием изображений:

Текст в изображение

Только prompt → совершенно новое изображение с качественным рендерингом текста и фотореалистичным качеством.

Слияние нескольких изображений

Несколько изображений (до 16) + одна инструкция → поместить человека с изображения 1 в сцену с изображения 2, сохранить стиль изображения 3 и т. д.

Инпейтинг

Одно изображение + --mask + инструкция → изменить только замаскированную область (только официальный gpt-image-2 поддерживает это).

Какой model выбрать

Все три канала называются одинаково; они различаются только каналом-источником, ценой/скоростью и тем, какие параметры учитываются. Скрипт автоматически обрабатывает эти различия через --model:
Краткое правило: быстро и недорогоgpt-image-2-all; фиксированный размер/4K и недорогоgpt-image-2-vip; уровни качества, дополнение по маскеgpt-image-2 (официальный).

Какие Agent’ы могут использовать это

По сути, Skill — это просто папка: набор инструкций, которые Agent должен прочитать (SKILL.md), + скрипт, который выполняет работу. Поэтому любой кодирующий Agent, который может читать локальные файлы и выполнять команды shell, может использовать его — например Codex, OpenClaw, hermes-agent, Claude Code и другие.Единственное требование: на машине, где запущен Agent (ваш компьютер или сервер), должны быть установлены Python 3 и сетевой доступ (скрипт напрямую вызывает api.apiyi.com). Вот и все — это не привязано к какому-либо конкретному Agent.

Настройка в 3 шага

① Создайте папку, вставьте файлы, установите зависимость

Создайте папку для skill с этими двумя файлами (полное содержимое — в следующих двух разделах). Этот skill вызывает через OpenAI SDK, поэтому сначала установите одну зависимость:

② Поместите ваш ключ в ту же папку

Запишите ваш API-ключ APIYI (создайте его в консоли api.apiyi.com) в gpt-image-2/.env:
Скрипт автоматически читает ключ из этого .envне требуется дополнительная настройка или переменные окружения.
.env содержит ваш секретный ключ. Если вы делитесь этим skill через репозиторий проекта, обязательно добавьте .env в .gitignore и никогда не коммитьте его в git.

③ Передайте его вашему Agent

  • Агенты, которые автоматически обнаруживают skills (например, Claude Code): поместите всю папку gpt-image-2/ в его каталог skills — личный ~/.claude/skills/ или проектный .claude/skills/ (общий через репозиторий).
  • Другие агенты: разместите его в соответствии с их собственным соглашением о skill/plugin; или проще всего — просто скажите Agent: “прочитайте SKILL.md в этой папке и следуйте ему”.
После установки все готово — перейдите к Как использовать это за примерами.

SKILL.md

Создайте gpt-image-2/SKILL.md с полным содержимым ниже (description содержит «что он делает + когда его использовать», что агент использует для автоматического запуска):
name должно состоять из строчных букв и дефисов. На агентах, которые поддерживают slash commands, имя каталога является командой — gpt-image-2 становится /gpt-image-2. ${CLAUDE_SKILL_DIR} — это переменная каталога skill, предоставляемая Claude Code; на других агентах просто используйте фактический путь к скрипту.

scripts/gpt_image.py

Создайте gpt-image-2/scripts/gpt_image.py с помощью OpenAI SDK, настроенного на APIYI (base_url="https://api.apiyi.com/v1"):

Как переключить модель

Переключение канала — это просто --model, одно из трех значений:
Чтобы изменить канал по умолчанию (чтобы не передавать --model каждый раз), добавьте строку в gpt-image-2/.env:
Скрипт автоматически обрабатывает оба варианта ответов base64 и url (у обратных моделей b64_json есть префикс data:image;base64,, который скрипт удаляет). Вам нужно переключить группу тарификации вашего token на image2_OSS в консоли APIYI только если вам строго требуется вывод URL — обычная генерация этого не требует.

Почему одна фраза генерирует изображение

Многие задаются вопросом: я ведь не вводил команду, так как же «нарисуй кота» создала изображение? Вот как это работает: при запуске Агент сначала читает description из SKILL.md каждого навыка (очень короткий фрагмент метаданных, который описывает «что делает этот навык и когда его использовать»). Когда ваш запрос соответствует этому сценарию (например, «нарисовать / сгенерировать / визуализировать изображение», «объединить эти изображения»), Агент автоматически решает вызвать навык, читает полный SKILL.md и запускает скрипт — и все это без необходимости запоминать какую-либо команду. Когда вы не хотите, чтобы Агент угадывал, и хотите полный контроль, используйте явный вызов ниже.

Как использовать

Естественный язык (неявный триггер)

После установки просто говорите с Agent:

Явный вызов (больше контроля)

  • Агенты, которые поддерживают slash commands (например, Claude Code):
  • Любой Agent / просто скажите ему запустить скрипт (самый универсальный вариант):

Куда попадает сгенерированное изображение

  • Когда -o — это простое имя файла (например, -o cat.png), все изображения сохраняются в папку gpt-image-output/ в корне проекта (создаётся автоматически), поэтому вы найдёте их прямо в своём проекте.
  • «Корень проекта» = первый каталог, содержащий .git или .claude, найденный при подъёме вверх от местоположения самого скрипта — так что независимо от того, из какого каталога запускается Agent, изображения попадут в проект, а не во временную папку, которую вы не сможете найти.
  • Скрипт выводит по одному полному абсолютному пути на каждое изображение, например Image saved to /Users/you/project/gpt-image-output/cat.png.
  • По умолчанию он создаёт только 1 изображение; -n 3 создаёт 3 одновременно (максимум 5), при этом суффикс -1, -2, -3 добавляется автоматически.
  • Когда -o — это путь с каталогом (например, -o images/cat.png или абсолютный путь), файл сохраняется точно по этому пути и не попадает в gpt-image-output/.
  • Редактирование / слияние работает так же: результат сохраняется как новый файл и не перезаписывает ваш исходный.

Связанные документы