Hacer que un OpenClaw AI Agent genere imágenes automáticamente es una funcionalidad que muchos desarrolladores quieren implementar. En este artículo, explicaremos cómo crear un Skill personalizado para OpenClaw en 5 pasos, conectando la API de generación de imágenes de Nano Banana Pro para lograr un flujo de trabajo completo, desde la instrucción en el chat hasta la creación automática de la imagen.
Valor principal: Al terminar de leer este artículo, dominarás el método para crear Skills personalizados en OpenClaw y aprenderás a utilizar la plataforma APIYI para conectar Nano Banana Pro. Esto te permitirá realizar generación de texto a imagen, edición de imágenes y procesamiento por lotes, dotando a tu AI Agent de capacidades de generación de imágenes de nivel profesional.

Resumen de las capacidades principales de la API de imagen de Nano Banana Pro
Antes de comenzar la integración, veamos qué capacidades puede aportar Nano Banana Pro a tu OpenClaw Agent.
Nano Banana Pro (nombre oficial Gemini 3 Pro Image Preview) es un modelo de generación de imágenes por IA de nivel profesional lanzado por Google DeepMind. Basado en Gemini 3 Pro, ha sido calificado por la industria como "el mejor modelo para generar imágenes que contienen renderizado de texto correcto y legible".
Parámetros técnicos principales de Nano Banana Pro
| Capacidad | Parámetro | Descripción |
|---|---|---|
| Renderizado de texto | Tasa de error < 10% | Precisión líder en la industria para texto de una sola línea |
| Resolución de salida | 1K / 2K / 4K | Alta resolución nativa, sin necesidad de post-procesamiento |
| Imágenes de referencia | Hasta 14 imágenes | Soporta composición de múltiples imágenes y consistencia de personajes |
| Consistencia facial | Hasta 5 personajes | Mantiene la consistencia facial de los personajes en diferentes escenas |
| Modo de pensamiento | Thinking Process | Visualización del razonamiento para composiciones complejas |
| Búsqueda (Grounding) | Google Search | Generación visual basada en datos en tiempo real |
🎯 Sugerencia de acceso: El acceso oficial a Nano Banana Pro requiere vincular una tarjeta de crédito extranjera en Google Cloud, lo cual tiene una barrera de entrada alta. Recomendamos acceder a través de la plataforma APIYI (apiyi.com), con un precio unificado de $0.05 por imagen (un 80% más barato que el precio oficial para 4K), soporte para Alipay/WeChat Pay y sin necesidad de tarjetas extranjeras.
Arquitectura completa para integrar OpenClaw Skill con Nano Banana Pro
Comprender la arquitectura general te ayudará a completar mejor la configuración posterior.

¿Por qué elegir el acceso a través de APIYI?
| Ítem de comparación | Conexión directa oficial de Google | A través de APIYI (apiyi.com) |
|---|---|---|
| Precio unitario 4K | $0.24/imagen | $0.05/imagen (80% de descuento) |
| Método de pago | Tarjeta de crédito extranjera | Alipay / WeChat Pay / USDT |
| Formato de API | SDK nativo de Google | Compatible con el formato nativo de Gemini |
| Requisitos de red | Requiere VPN/Proxy | Conexión directa local |
| Límite de concurrencia | Sujeto a cuotas | Concurrencia ilimitada, RPM 2000+ |
| Descuentos para grandes clientes | Ninguno | Hasta un 20% de bonificación por recarga |
Paso 1: Crear la estructura de directorios de OpenClaw Skill
# Crear la estructura de directorios de la Skill
mkdir -p ~/.openclaw/skills/nano-banana-pro/scripts
cd ~/.openclaw/skills/nano-banana-pro
touch SKILL.md scripts/generate.py scripts/edit.py
Paso 2: Escribir el archivo de definición SKILL.md
SKILL.md es el archivo central que OpenClaw utiliza para identificar e invocar tu Skill. Está compuesto por metadatos YAML (Front Matter) e instrucciones en Markdown.
---
name: nano-banana-pro
description: Generate and edit images using Nano Banana Pro (Gemini 3 Pro Image) via APIYI platform. Supports text-to-image, image editing, multi-image composition, and batch processing.
version: 1.0.0
metadata:
openclaw:
requires:
env:
- APIYI_API_KEY
bins:
- python3
primaryEnv: APIYI_API_KEY
emoji: "🎨"
---
# Skill de generación de imágenes Nano Banana Pro
## Funcionalidades
- **Texto a imagen**: Genera imágenes de alta calidad (1K/2K/4K) a partir de descripciones de texto.
- **Edición de imágenes**: Permite modificar, realizar composiciones y aplicar transferencias de estilo a imágenes existentes.
- **Procesamiento por lotes**: Soporta la generación y edición masiva de imágenes.
Modo de uso
Generar imágenes
exec python3 scripts/generate.py --prompt "descripción" --aspect-ratio "16:9" --resolution "2K"
Editar imágenes
exec python3 scripts/edit.py --instruction "instrucción de edición" --image-url "URL de la imagen"
Consideraciones importantes
- Utiliza el formato nativo de la API de Gemini:
/v1beta/models/{model}:generateContent - Las imágenes en 4K tardan aproximadamente 60 segundos; se recomienda configurar
exec timeout=120 - Se recomienda usar indicaciones en inglés para obtener los mejores resultados
> 💡 **Consejo de desarrollo**: Una vez declarada la variable `primaryEnv: APIYI_API_KEY`, OpenClaw inyectará automáticamente la clave API en el entorno de ejecución del Skill. Tu script podrá leerla directamente a través de variables de entorno, sin necesidad de codificar la clave de forma rígida.
---
## Paso 3: Escribir el script de texto a imagen generate.py
Este es el script principal, encargado de recibir los parámetros enviados por OpenClaw e invocar la API de Nano Banana Pro para generar la imagen.
### Prueba rápida con curl (formato nativo de Gemini)
Primero, utiliza un comando curl para verificar que la conexión con la API sea correcta; esta es la forma más rápida de realizar una prueba:
```bash
curl -s -X POST \
"https://api.apiyi.com/v1beta/models/gemini-3-pro-image-preview:generateContent" \
-H "Authorization: Bearer sk-tu-clave-APIYI" \
-H "Content-Type: application/json" \
-d '{
"contents": [{
"parts": [
{"text": "Create a picture of a nano banana dish in a fancy restaurant with a Gemini theme"}
]
}],
"generationConfig": {
"responseModalities": ["IMAGE"],
"imageConfig": {
"aspectRatio": "16:9",
"imageSize": "2K"
}
}
}' | python3 -c "
import sys, json, base64
data = json.load(sys.stdin)
img_data = data['candidates'][0]['content']['parts'][0]['inlineData']['data']
sys.stdout.buffer.write(base64.b64decode(img_data))
" > gemini-native-image.png
Si la ejecución es exitosa, se generará el archivo gemini-native-image.png en el directorio actual.
Script de Python (formato nativo de Gemini)
#!/usr/bin/env python3
"""Script de texto a imagen para Nano Banana Pro - OpenClaw Skill (formato nativo de Gemini)"""
import os, json, base64, argparse, requests
from datetime import datetime
API_KEY = os.environ.get("APIYI_API_KEY", "")
API_BASE = "https://api.apiyi.com/v1beta/models" # Interfaz nativa de Gemini en APIYI
def generate_image(prompt, aspect_ratio="16:9", resolution="2K"):
url = f"{API_BASE}/gemini-3-pro-image-preview:generateContent"
headers = {
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json"
}
data = {
"contents": [{"parts": [{"text": prompt}]}],
"generationConfig": {
"responseModalities": ["IMAGE"],
"imageConfig": {
"aspectRatio": aspect_ratio,
"imageSize": resolution
}
}
}
response = requests.post(url, headers=headers, json=data, timeout=120)
response.raise_for_status()
result = response.json()
# Formato nativo de Gemini: extraer inlineData de candidates
parts = result["candidates"][0]["content"]["parts"]
for part in parts:
if "inlineData" in part:
img_bytes = base64.b64decode(part["inlineData"]["data"])
filename = f"nano_banana_{datetime.now().strftime('%Y%m%d_%H%M%S')}.png"
with open(filename, "wb") as f:
f.write(img_bytes)
print(f"Imagen generada: {filename} ({len(img_bytes)/1024:.1f} KB)")
return filename
print("No se pudieron extraer los datos de la imagen")
return None
if __name__ == "__main__":
parser = argparse.ArgumentParser()
parser.add_argument("--prompt", required=True)
parser.add_argument("--aspect-ratio", default="16:9")
parser.add_argument("--resolution", default="2K", help="Resolución: 1K/2K/4K")
args = parser.parse_args()
generate_image(args.prompt, args.aspect_ratio, args.resolution)
🚀 Inicio rápido: El código anterior utiliza la interfaz con formato nativo de Gemini de APIYI (apiyi.com), cuyo endpoint es
/v1beta/models/{model}:generateContent. La estructura de la respuesta es idéntica a la oficial de Google. Simplemente crea una clave en el panel de APIYI (api.apiyi.com) para comenzar a usarlo.
Paso 4: Escribir el script de edición de imágenes edit.py
Nano Banana Pro no solo genera imágenes, también permite editar las que ya tienes.
#!/usr/bin/env python3
"""Script de edición de imágenes Nano Banana Pro - OpenClaw Skill (formato nativo de Gemini)"""
import os, json, base64, argparse, requests
from datetime import datetime
API_KEY = os.environ.get("APIYI_API_KEY", "")
API_BASE = "https://api.apiyi.com/v1beta/models"
def edit_image(instruction, image_url, extra_images=None):
url = f"{API_BASE}/gemini-3-pro-image-preview:generateContent"
headers = {"Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json"}
# Construir las 'parts' multimodales en el formato nativo de Gemini
parts = [{"text": instruction}]
# Convertir la URL de la imagen en datos base64 inline
img_resp = requests.get(image_url, timeout=30)
parts.append({"inlineData": {"mimeType": "image/png",
"data": base64.b64encode(img_resp.content).decode()}})
if extra_images: # Soporta composición de varias imágenes (máximo 14 imágenes de referencia)
for img_url in extra_images[:13]:
r = requests.get(img_url, timeout=30)
parts.append({"inlineData": {"mimeType": "image/png",
"data": base64.b64encode(r.content).decode()}})
data = {
"contents": [{"parts": parts}],
"generationConfig": {"responseModalities": ["IMAGE"]}
}
response = requests.post(url, headers=headers, json=data, timeout=120)
response.raise_for_status()
result_parts = response.json()["candidates"][0]["content"]["parts"]
for part in result_parts:
if "inlineData" in part:
filename = f"edited_{datetime.now().strftime('%Y%m%d_%H%M%S')}.png"
with open(filename, "wb") as f:
f.write(base64.b64decode(part["inlineData"]["data"]))
print(f"Edición completada: {filename}")
return filename
return None
if __name__ == "__main__":
parser = argparse.ArgumentParser()
parser.add_argument("--instruction", required=True)
parser.add_argument("--image-url", required=True)
parser.add_argument("--extra-images", nargs="*")
args = parser.parse_args()
edit_image(args.instruction, args.image_url, args.extra_images)
Resumen de capacidades de edición de imágenes
| Tipo de edición | Ejemplo de indicación | Tiempo de procesamiento |
|---|---|---|
| Reemplazo de fondo | "Remove background and add sunset" | ~10 seg |
| Conversión de estilo | "Convert to anime style" | ~15 seg |
| Adición de elementos | "Add sunglasses to the person" | ~10 seg |
| Composición de varias imágenes | "Combine these logos and add…" | ~20 seg |
| Adición de texto | "Add title text: Hello World" | ~10 seg |
| Ajuste de color | "Make the image warmer, increase contrast" | ~8 seg |
Paso 5: Configurar OpenClaw y realizar pruebas
Configurar la clave API
Agregue la configuración del Skill en el archivo de configuración de OpenClaw ~/.openclaw/openclaw.json:
{
"skills": {
"entries": {
"nano-banana-pro": {
"enabled": true,
"apiKey": "sk-tu-clave-API-de-APIYI"
}
}
}
}

Testar el Skill
Envíe una indicación de prueba en la plataforma de mensajería para verificar la funcionalidad:
Genera una imagen de exhibición de producto de comercio electrónico en estilo minimalista moderno, fondo blanco, producto centrado
Verifique si el Skill se ha cargado correctamente:
openclaw skills list | grep nano-banana
openclaw skills test nano-banana-pro
💰 Optimización de costos: Nano Banana Pro tiene un precio uniforme de $0.05 por imagen a través de APIYI (apiyi.com), independientemente de la resolución. Si el consumo diario promedio de su proyecto supera las 5000 imágenes, puede disfrutar de bonificaciones por recarga de hasta el 20%, reduciendo el costo por imagen a tan solo $0.04.
Comparativa de costes y rendimiento de la API de Nano Banana Pro
Elegir el método de acceso adecuado es fundamental para el uso a largo plazo.

El gráfico SVG de arriba muestra una comparativa detallada de precios y parámetros de rendimiento. Datos clave: al acceder a Nano Banana Pro a través de APIYI, el coste por imagen 4K es de solo $0,05 (un 80% de descuento respecto a los $0,24 oficiales). Con las bonificaciones por recarga para grandes clientes, el precio baja hasta los $0,04 por imagen. La plataforma procesa más de 100.000 imágenes diarias y no tiene límites de concurrencia.
Preguntas frecuentes
Q1: ¿Qué dependencias necesito instalar para conectar OpenClaw con Nano Banana Pro?
Solo necesitas Python 3 y la biblioteca requests. Realizamos la invocación a través de la interfaz de formato nativo de Gemini de APIYI apiyi.com (/v1beta/models/{model}:generateContent), por lo que no es necesario instalar el SDK google-generativeai de Google. Basta con ejecutar pip install requests. También puedes realizar pruebas directamente con el comando curl sin ninguna dependencia adicional.
Q2: ¿Qué hacer si OpenClaw da un error de tiempo de espera (timeout) al generar imágenes 4K?
Nano Banana Pro tarda unos 60 segundos en generar una imagen 4K. En las instrucciones de uso de SKILL.md, se recomienda que OpenClaw utilice exec timeout=120 o exec timeout=180 al invocar el script, para evitar que el tiempo de espera predeterminado interrumpa la tarea.
Q3: ¿Puedo usar otros modelos de generación de imágenes en lugar de Nano Banana Pro?
Sí. La plataforma APIYI apiyi.com es compatible con varios modelos de generación de imágenes de forma simultánea. Solo tienes que modificar el parámetro model en generate.py para cambiar de modelo; el formato de la API es idéntico, por lo que no necesitas modificar el resto del código.
Q4: ¿Cómo puedo garantizar la seguridad de mi Skill de OpenClaw?
Existen tres medidas clave: primero, la clave API debe inyectarse mediante variables de entorno y nunca escribirse directamente en el script; segundo, utiliza únicamente Skills creadas por ti mismo y evita instalar habilidades de generación de imágenes de origen desconocido desde ClawHub (se han detectado más de 820 habilidades maliciosas); tercero, revisa periódicamente los registros de OpenClaw para confirmar que no haya invocaciones inusuales.
Q5: ¿Qué funciones de edición de imágenes admite y qué tal es el resultado?
Nano Banana Pro admite el reemplazo de fondos, transferencia de estilo, adición/eliminación de elementos, síntesis de múltiples imágenes (hasta 14 imágenes de referencia), renderizado de texto, entre otros. El renderizado de texto es su mayor ventaja, con una tasa de error en texto de una sola línea inferior al 10%, superando con creces a DALL-E 3 y Midjourney. Al usar las funciones de edición a través de la plataforma APIYI, el coste es de solo $0.05 por operación y se completa en unos 10 segundos de media.
Resumen
A través de los 5 pasos de este tutorial, ya dominas el proceso completo para crear una Skill personalizada en OpenClaw que se conecte a la API de imágenes de Nano Banana Pro:
- Crear el directorio de la Skill — Estructura estándar de
SKILL.md+ carpetascripts/. - Redactar el SKILL.md — Declaración de dependencias, variables de entorno e instrucciones de uso.
- Escribir el script de texto a imagen — Invocación de Nano Banana Pro mediante la interfaz de formato nativo de Gemini en APIYI.
- Escribir el script de edición — Soporte para síntesis de múltiples imágenes, reemplazo de fondo y transferencia de estilo.
- Configuración y pruebas — Configurar la clave en
openclaw.jsony validar las funciones.
Te recomendamos acceder a Nano Banana Pro a través de APIYI apiyi.com para disfrutar de un precio unificado de $0.05 por imagen (un 80% de ahorro respecto al precio oficial de 4K). Además, contarás con una interfaz unificada para Claude, GPT-4o, DeepSeek y otros modelos, y podrás probar gratis la generación de imágenes en imagen.apiyi.com.
Este artículo ha sido redactado por el equipo técnico de APIYI, especialistas en la implementación práctica de APIs de Modelos de Lenguaje Grande y tutoriales de desarrollo de Agentes. Para más guías técnicas, visita el centro de ayuda de APIYI: help.apiyi.com
