Crea un Juego de Arcade Match 3 con Gemini CLI: De Cero a Cloud Run

Gemini CLI y desarrollo de juegos
🤖 Gemini CLI • Nivel Intermedio

🎮 Crea un Juego Match 3 con Gemini CLI

Aprende a orquestar un agente de IA para construir CloudCrush, un juego de arcade completo en Go, compilado a WebAssembly y desplegado en Cloud Run.

Tu Progreso en el Curso 0% Completado

🎯 Lo que Aprenderás

Domina flujos de trabajo con agentes de IA: desde la creación del juego hasta su despliegue en la nube, pasando por pruebas automatizadas y auditorías de seguridad.

1

Módulo 1: Configuración del Entorno

Prepara tu entorno de desarrollo con las herramientas necesarias: Gemini CLI, Go y gcloud CLI.

Comandos Esenciales:

  • gemini --version: Verifica la instalación de Gemini CLI
  • gcloud auth list: Confirma tu autenticación en Google Cloud
  • gcloud config set project: Configura tu proyecto de Cloud
Terminal
$ gemini --version 0.37.1 $ gcloud config get project my-gemini-project

Ejercicio Práctico 1.1

¿Qué comando usas para configurar tu proyecto en gcloud?

2

Módulo 2: Modo de Planificación con Gemini

El modo de planificación (/plan) permite que Gemini CLI coordine el desarrollo de tareas complejas antes de escribir código.

Flujo de Trabajo:

  • /plan: Activa el modo de planificación
  • Responder preguntas: Clarifica preferencias del proyecto
  • Revisar plan: Acepta o modifica la estrategia
  • Ejecutar: El agente genera el código automáticamente
Gemini CLI
> /plan [Plan mode activated] > Build a Match-3 game called 'Cloud Crush' in Go using Ebitengine v2... [Generating plan...] [Plan ready for review]

Ejercicio Práctico 2.1

¿Qué comando activa el modo de planificación en Gemini CLI?

3

Módulo 3: Dirección del Modelo (Model Steering)

La dirección del modelo te permite corregir el rumbo del agente mientras trabaja, agregando requisitos o ajustes sin interrumpir el flujo.

Características Clave:

  • Comandos en cola: Agrega instrucciones mientras el agente trabaja
  • Correcciones en tiempo real: Ajusta la implementación sin reiniciar
  • Feedback inmediato: El agente adapta su respuesta al nuevo contexto
Model Steering
[Agent working...] [Generating game logic...] > Add a 60-seconds countdown timer and high-score tracker [Steering hint queued] [Updating implementation...]

Ejercicio Práctico 3.1

¿Qué te permite hacer la "dirección del modelo"?

4

Módulo 4: Compilación a WebAssembly

Convierte tu juego de Go para que se ejecute en navegadores web usando WebAssembly (WASM).

Proceso de Compilación:

  • GOOS=js GOARCH=wasm: Configura el entorno para WASM
  • go build: Compila el código a game.wasm
  • Servidor web: Sirve WASM, assets y wasm_exec.js
Compilación WASM
$ GOOS=js GOARCH=wasm go build -o game.wasm [Build successful] $ go run server.go Serving at http://localhost:8080

Ejercicio Práctico 4.1

¿Qué variables de entorno configuras para compilar a WASM?

5

Módulo 5: Despliegue en Cloud Run

Implementa tu juego en Google Cloud Run para que esté disponible globalmente con escalado automático.

Comandos de Despliegue:

  • gcloud builds submit: Construye la imagen del contenedor
  • gcloud run deploy: Despliega en Cloud Run
  • --allow-unauthenticated: Permite acceso público
Cloud Run Deploy
$ gcloud run deploy cloud-crush \ --source . \ --region us-central1 \ --allow-unauthenticated ✓ Deploying... Done! Service URL: https://cloud-crush-xyz.a.run.app

Ejercicio Práctico 5.1

¿Qué flag permite acceso público en Cloud Run?

6

Módulo 6: Subagentes Especializados

Los subagentes operan en contextos independientes para tareas específicas como pruebas o auditorías de seguridad.

Tipos de Subagentes:

  • @browser_agent: Navega y prueba aplicaciones web
  • @security-auditor: Audita código en busca de vulnerabilidades
  • Agentes personalizados: Crea tus propios arquetipos especializados
Subagentes
> @browser_agent perform end-to-end test... [Launching Chrome instance] [Navigating to https://cloud-crush.a.run.app] [Test complete. Screenshots saved to ./screenshots]

Ejercicio Práctico 6.1

¿Qué subagente usarías para probar una aplicación web?

7

Módulo 7: Auditoría de Seguridad

Crea agentes personalizados para auditar tu código en busca de vulnerabilidades comunes antes del despliegue.

Vulnerabilidades a Detectar:

  • SQL Injection: Consultas no sanitizadas
  • XSS: Scripts inyectados en entradas de usuario
  • Credenciales hardcodeadas: Claves API o contraseñas en el código
  • Directory Traversal: Acceso no autorizado a archivos

Ejercicio Práctico 7.1

Nombra una vulnerabilidad de seguridad común en aplicaciones web:

🚀 ¡Tu Juego Está Listo para el Mundo!

Has aprendido a orquestar un agente de IA para construir, probar, desplegar y auditar una aplicación completa. ¡Ahora es tu turno de crear algo increíble!

Comentarios