5. Uso básico del CLI

Objetivo del tema

Dominar la operación diaria de Gemini CLI: abrir sesiones interactivas, navegar por los comandos internos y replicar flujos comunes de trabajo.

Nos basamos en la guía oficial de comandos y atajos para garantizar que cada ejemplo utilice las capacidades actuales del CLI.

5.1 Modo interactivo / REPL

Inicia el CLI simplemente escribiendo gemini en la terminal. Se abrirá una interfaz tipo REPL que acepta texto libre, comandos especiales y archivos adjuntos.

  • Barra de estado: muestra el modelo activo, el estado del sandbox y la cantidad de contextos cargados.
    modelo activo y estado del sandbox de Gemini CLI
  • Historial persistente: puedes recuperar entradas anteriores con las flechas de dirección; el CLI mantiene sesiones aunque cierres la ventana si no borras la carpeta de estado.
  • Shell embebido: presiona ! para alternar el modo shell; mientras esté activo, cada línea se ejecuta en tu terminal (usa ! nuevamente para volver al REPL).
    shell embebido con el caracter ! Gemini CLI
  • Headless puntual: cuando quieras automatizar una consulta, puedes ejecutar echo "Describe src/main.ts" | gemini o usar gemini --prompt "..."; al terminar se cierra la sesión.

El entorno headless comparte las mismas credenciales y configuración del modo interactivo, por lo que los resultados son consistentes con tu perfil actual.

5.2 Comandos principales

Gemini CLI reconoce atajos que comienzan con / (metacomandos), @ (contexto de archivos) y ! (passthrough al shell). Estos son los más usados en sesiones cotidianas:

Prefijo Comando Descripción
/ /chat save <tag> Guarda la conversación actual como checkpoint manual (accesible con /chat list y /chat resume).
/ /compress Reemplaza el historial por un resumen generado para reducir consumo de tokens.
/ /copy Copia la última respuesta al portapapeles (requiere pbcopy, clip o xclip/xsel según el sistema).
/ /memory show Muestra el contexto concatenado que el modelo usará en la siguiente respuesta.
@ @README.md Inyecta el contenido del archivo en tu prompt (respetando filtros de Git y límites de tamaño).
@ @src/components Envía un directorio completo, ideal para preguntas sobre módulos o paquetes.
! !git status Ejecuta el comando en tu shell local y devuelve el resultado dentro de la sesión.
! ! (solo) Alterna el modo shell persistente; vuelve a presionar ! para regresar al REPL.

Otros atajos Útiles:

  • /clear o Ctrl+L para limpiar la interfaz.
  • /bug para enviar un reporte rápido al repositorio oficial.
  • /chat share archivo.md para exportar la conversación a Markdown o JSON.
  • @ (sin ruta) cuando quieras escribir sobre el propio símbolo @ sin que el CLI intente leer archivos.

5.3 Ejemplos sencillos de uso

Estos flujos ilustran cómo combinar los comandos anteriores en tareas reales.

5.3.1 Revisar el estado de un proyecto

gemini
@package.json Resumí las dependencias principales.
!git status
/memory show

El primer prompt analiza package.json, el segundo ejecuta git status sin abandonar la sesión y finalmente verificas qué contexto recibirá el modelo.

5.3.2 Crear y retomar una sesión guiada

Necesito una lista de pruebas sugeridas para src/cart/
@src/cart
/chat save pruebas-cart

Cuando quieras volver al mismo punto, ejecuta:

/chat resume pruebas-cart

Puedes listar todas las etiquetas disponibles con /chat list y eliminar las que ya no necesites usando /chat delete <tag>.

5.3.3 Automatizar una consulta rápida

echo "@README.md Generá un resumen de 5 puntos clave" | gemini

El comando lee el archivo, envía la petición y cierra la sesión headless. Ideal para integrarlo en scripts o pipelines.

Recuerda que la automatización respeta las mismas restricciones de aprobación y sandbox que configuraste con anterioridad.

Conclusión: dominar el REPL, los comandos especiales y los flujos básicos te permite aprovechar Gemini CLI desde el primer día. En los temas siguientes profundizaremos en comandos avanzados, checkpointing y automatización.