10 Unidad 4: Gemini CLI — Tu JARVIS Gratis
11 🎁 Unidad 4: Gemini CLI — Tu JARVIS Gratis
11.1 “Google te dá las herramientas. Vos aprendés a usarlas.”
11.2 🎯 Objetivo
Al terminar esta unidad podrás:
- ✅ Instalar Gemini CLI en tu sistema
- ✅ Usar Gemini sin costo alguno
- ✅ Configurar el contexto de tu proyecto
- ✅ Integrar con Google Cloud
- ✅ Comparar con OpenCode y Claude Code
11.3 🤖 ¿Qué es Gemini CLI?
11.3.1 En una frase
Gemini CLI es el agente de terminal oficial de Google. Acceso gratis a Gemini 2.0 con 1M tokens de contexto.
┌──────────────────────────────────────────────────────────────────────────────┐
│ │
│ GEMINI CLI │
│ ═══════════ │
│ │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ TU │ │ GEMINI │ │ GOOGLE │ │
│ │ TERMINAL │────▶│ CLI │────▶│ AI │ │
│ │ │◀────│ (Agente) │◀────│ (Gemini) │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
│ │
│ GRATIS (límites) │
│ 1M tokens de contexto │
│ Integración Google Cloud │
│ │
└──────────────────────────────────────────────────────────────────────────────┘
11.3.2 ¿Por qué Gemini CLI?
| Característica | Gemini CLI | OpenCode | Claude Code |
|---|---|---|---|
| Precio | GRATIS | Gratis (BYO) | $20-200/mes |
| Contexto | 1M tokens | Según modelo | 1M (Opus) |
| Modelo | Gemini 2.0 | 75+ modelos | Solo Claude |
| Configuración | Mínima | Media | Media |
| Google Cloud | ✅ | ❌ | ❌ |
💡 Cuándo usar Gemini CLI: - Empezar a aprender sin costo - Prototipos rápidos - Proyectos que no requieren API keys - Integración con Google Cloud
11.4 🔧 Instalación de Gemini CLI
11.4.1 ⏱️ Timeline
| Paso | Descripción | Tiempo | ✓ |
|---|---|---|---|
| 1 | Verificar prerrequisitos | 2 min | ⬜ |
| 2 | Instalar Gemini CLI | 5 min | ⬜ |
| 3 | Autenticar con Google | 5 min | ⬜ |
| 4 | Primera ejecución | 2 min | ⬜ |
11.4.2 Paso 1: Verificar Prerrequisitos
Comando:
node --version
Resultado esperado:
v18.x.x o superior
11.4.3 Paso 2: Instalar Gemini CLI
11.4.3.1 Opción A: Con npm (Recomendado)
Hint: Paquete oficial de Google
Comando parcial: npm install -g @
Completá el comando:
[ESCRIBE AQUÍ]
Resultado esperado:
added X packages in Ys
11.4.3.2 Opción B: Con curl
Comando parcial: curl -fsSL https://google.com/ |
Completá:
[ESCRIBE AQUÍ]
11.4.4 Paso 3: Autenticar
Comando:
geminiResultado esperado:
🔐 Please authenticate with Google
Visit: https://auth.google.com/
- Abrí el link en tu navegador
- Iniciá sesión con tu cuenta Google
- Autorizá el acceso
- Volvé a la terminal
¿No querés autenticarte?
gemini --api-key $GOOGLE_API_KEY11.4.5 Paso 4: Verificar Instalación
Comando:
gemini --version
Resultado esperado:
X.X.X
11.5 ⚙️ Configuración de Gemini CLI
11.5.1 Estructura de Archivos
~/.gemini/
├── config.yaml # Configuración
├── sessions/ # Sesiones guardadas
└── logs/ # Logs
11.5.2 El archivo config.yaml
Ubicación: ~/.gemini/config.yaml
Comando para crear:
mkdir -p ~/.gemini
touch ~/.gemini/config.yaml11.5.3 Explicación de Cada Setting
11.5.3.1 1. Modelo
model: "gemini-2.0-flash"| Modelo | Contexto | Costo | Mejor Para |
|---|---|---|---|
gemini-2.0-flash |
1M tokens | GRATIS | Tareas rápidas |
gemini-2.0-pro |
1M tokens | Pago | Código complejo |
gemini-1.5-pro |
1M tokens | Pago | Balanceado |
11.5.3.2 2. Parámetros de Generación
generation:
temperature: 0.7
max_tokens: 100000
top_p: 0.9
top_k: 40| Parámetro | Qué hace | Rango |
|---|---|---|
temperature |
Creatividad (0.7 es balanceado) | 0.0 - 1.0 |
max_tokens |
Longitud máxima | Según modelo |
top_p |
Diversidad de respuestas | 0.0 - 1.0 |
top_k |
Tokens a considerar | 1 - 100 |
11.5.3.3 3. Contexto del Proyecto
context:
project_root: "~/mi-proyecto"
include:
- "src/**"
- "tests/**"
exclude:
- "node_modules/**"
- ".git/**"
- "*.log"11.5.3.4 4. Sistema de Instrucciones
system:
instructions: |
Eres un asistente de programación experto.
Siempre incluye comentarios en español.
Prioriza código legible sobre código clever.11.6 🎭 Tu Primer AGENTS.md para Gemini CLI
# AGENTS.md — [Tu Nombre]
## Quién Soy
[Tu descripción]
## Reglas
1. Código limpio y documentado
2. Tests para cada función
3. Explicar decisiones técnicas
## Preferencias
- Lenguaje principal: [tu lenguaje]
- Comentarios en: [español/inglés]
- Estilo: [tu estilo]11.7 🔗 Integración con Google Cloud
11.7.1 Configuración
gcloud:
project: "mi-proyecto-123"
region: "us-central1"11.7.2 Comandos Útiles
# Listar proyectos
gemini gcloud projects list
# Ver recursos
gemini gcloud compute instances list
# Deploy a Cloud Run
gemini gcloud run deploy mi-servicio11.8 🧪 Lab: Tu Primera Sesión con Gemini CLI
11.8.1 Objetivo
Usar Gemini CLI gratis para una tarea real.
11.8.2 ⏱️ Timeline
| Paso | Descripción | Tiempo | ✓ |
|---|---|---|---|
| 1 | Instalar Gemini CLI | 5 min | ⬜ |
| 2 | Configurar | 5 min | ⬜ |
| 3 | Sesión práctica | 15 min | ⬜ |
| 4 | Reflexión | 5 min | ⬜ |
11.8.3 Escenario
Tony tiene budget limitado pero necesita un JARVIS funcional. Gemini CLI es la solución.
11.8.4 Paso 1: Crear config.yaml
Archivo: ~/.gemini/config.yaml
model: "gemini-2.0-flash"
generation:
temperature: 0.7
max_tokens: 100000
top_p: 0.9
context:
exclude:
- "node_modules/**"
- ".git/**"
system:
instructions: |
Soy desarrollador [tu rol].
Prefiero código limpio con comentarios.11.8.5 Paso 2: Tu Primera Sesión
Comando:
geminiTu mensaje:
> Hola. Soy [tu nombre] y estoy aprendiendo a usar IA.
> Necesito que me expliques qué puede hacer Gemini CLI
> y cómo configurarlo para proyectos de código.
11.9 📊 Comparación: Las 3 Herramientas Principales
| Aspecto | OpenCode | Claude Code | Gemini CLI |
|---|---|---|---|
| Precio | Gratis (BYO) | $20-200/mes | GRATIS |
| Modelos | 75+ | Solo Claude | Solo Gemini |
| Contexto | Según modelo | 1M (Opus) | 1M |
| Subagentes | ❌ | ✅ | ❌ |
| Open Source | ✅ | ❌ | ❌ |
| Configuración | Alta | Media | Baja |
| MCP | ✅ | ✅ | ✅ |
| AGENTS.md | ✅ | ✅ | ✅ |
11.9.1 Recomendación por Nivel:
| Nivel | Herramienta Principal | Alternativa |
|---|---|---|
| 1 (Principiante) | Gemini CLI | OpenCode |
| 2 (Intermedio) | OpenCode | Claude Code |
| 3 (Avanzado) | Claude Code + OpenCode | KiloCode |
| 4 (Experto) | Stack completo | - |
11.10 ✅ Checklist Final
| Habilidad | ✓ |
|---|---|
| Gemini CLI instalado | ⬜ |
| Autenticado con Google | ⬜ |
| config.yaml creado | ⬜ |
| Sesión iniciada | ⬜ |
| Diferencias entendidas | ⬜ |
11.11 🏆 Logro
“Free Agent” desbloqueado:
- +50 XP
- Capacidad de trabajar sin costo
- Base para herramientas más avanzadas
11.12 🔗 Siguiente
¿Querés explorar herramientas especializadas?