Error de autenticación de Gemini CLI en VS Code usando Vertex AI

Trabajar con inteligencia artificial dentro del editor puede acelerar muchísimo el análisis de proyectos, la revisión de código y la planificación técnica. Sin embargo, cuando uno empieza a integrar herramientas como Gemini CLI en Visual Studio Code, no siempre todo funciona a la primera.

En mi caso, el objetivo era claro: usar Gemini CLI en VS Code conectado a Vertex AI dentro de Google Cloud, en lugar de depender de una API key tradicional. La idea era aprovechar un entorno más sólido, más profesional y mejor alineado con un flujo de trabajo real de desarrollo.

El problema apareció cuando, aun teniendo parte de la configuración avanzada, Gemini CLI seguía fallando con errores de autenticación.

El problema: Gemini CLI no respondía como esperaba

Al ejecutar Gemini CLI dentro de Visual Studio Code, el comportamiento no era consistente. En algunos momentos parecía iniciar correctamente, pero al enviar instrucciones devolvía errores de autenticación. En otros casos, el sistema seguía pidiendo una API key, incluso cuando el objetivo era usar Vertex AI con Google Cloud.

Ese fue el punto que más confusión generó.

A simple vista, parecía que todo estaba correctamente configurado. La terminal abría, Gemini CLI iniciaba y parte de la autenticación parecía resuelta. Pero al intentar trabajar con el proyecto real, seguían apareciendo errores relacionados con credenciales.

Qué estaba pasando realmente

La raíz del problema era una mezcla de configuración previa y variables de entorno heredadas.

Aunque la intención era usar Vertex AI, el entorno todavía conservaba rastros de autenticación anterior mediante:

  • GEMINI_API_KEY
  • GOOGLE_API_KEY

Mientras esas variables siguieran presentes, el comportamiento de Gemini CLI podía entrar en conflicto con el uso de Google Cloud Application Default Credentials.

En otras palabras, el editor y la terminal estaban intentando trabajar con dos caminos de autenticación distintos al mismo tiempo.

Y eso terminaba rompiendo la ejecución.

La solución: limpiar el entorno y forzar Vertex AI

La solución consistió en limpiar completamente las claves anteriores, dejar vacías esas variables, definir explícitamente que quería usar Vertex AI y establecer el proyecto y la ubicación correctos dentro del entorno de VS Code.

Después, el paso fundamental fue autenticar con:

gcloud auth application-default login

Ese comando fue el punto de inflexión, porque permitió que la autenticación se apoyara en las Application Default Credentials de Google Cloud, que era exactamente el camino correcto para trabajar con Vertex AI desde el entorno local.

Los comandos que utilicé en VS Code

Estos son los comandos que usé en la terminal de Visual Studio Code para resolver el problema:

Remove-Item Env:\GEMINI_API_KEY -ErrorAction Ignore
Remove-Item Env:\GOOGLE_API_KEY -ErrorAction Ignore

$env:GEMINI_API_KEY=""
$env:GOOGLE_API_KEY=""

$env:GOOGLE_GENAI_USE_VERTEXAI="true"
$env:GOOGLE_CLOUD_PROJECT="project-5d67d0a9-7f2a-4387-b6f"
$env:GOOGLE_CLOUD_LOCATION="global"

gcloud auth application-default login

Qué hace cada comando

Para quienes quieran entender bien la lógica detrás de la solución, este fue el papel de cada bloque.

1. Eliminar claves antiguas del entorno

Remove-Item Env:\GEMINI_API_KEY -ErrorAction Ignore
Remove-Item Env:\GOOGLE_API_KEY -ErrorAction Ignore

Con esto eliminé posibles variables activas que seguían forzando el uso de autenticación por clave.

2. Vaciar explícitamente las API keys

$env:GEMINI_API_KEY=""
$env:GOOGLE_API_KEY=""

Esto ayudó a evitar que el entorno siguiera heredando valores previos en la sesión actual.

3. Forzar el uso de Vertex AI

$env:GOOGLE_GENAI_USE_VERTEXAI="true"

Esta línea fue clave para indicar de forma explícita que Gemini debía trabajar con Vertex AI.

4. Definir proyecto y ubicación

$env:GOOGLE_CLOUD_PROJECT="project-5d67d0a9-7f2a-4387-b6f"
$env:GOOGLE_CLOUD_LOCATION="global"

Acá establecí el proyecto correcto y una ubicación global, algo especialmente útil cuando se trabaja con determinados modelos y configuraciones dentro de Vertex AI.

5. Autenticación con credenciales por defecto

gcloud auth application-default login

Este paso permitió autenticar correctamente el entorno local contra Google Cloud usando credenciales adecuadas para trabajar con Vertex AI.

El resultado después de aplicar la solución

Una vez ordenado el entorno y autenticado correctamente con Google Cloud, Gemini CLI empezó a comportarse de una forma mucho más coherente dentro de Visual Studio Code.

A partir de ahí, la experiencia cambió por completo.

Ya no se trataba de pelear contra errores de credenciales o rutas de autenticación cruzadas, sino de usar Gemini CLI como realmente quería hacerlo: dentro del proyecto, desde la terminal del editor y con un flujo mucho más profesional para análisis técnico, revisión de estructura y asistencia contextual.

Qué aprendí de esta experiencia

La principal enseñanza fue esta: cuando una integración con inteligencia artificial falla, muchas veces el problema no está en una sola cosa.

Puede ser una suma de factores:

  • variables viejas cargadas en el entorno,
  • mezcla entre API key y Vertex AI,
  • una terminal de VS Code con configuración heredada,
  • o una autenticación local incompleta.

Por eso, antes de asumir que la herramienta “no funciona”, conviene revisar el entorno con paciencia y limpiar todo lo que pueda estar interfiriendo.

En mi caso, la solución no pasó por reinstalarlo todo desde cero, sino por entender qué método de autenticación quería usar realmente y dejar el entorno alineado con esa decisión.

Mi conclusión sobre Gemini CLI en VS Code

Después de resolverlo, mi impresión es muy positiva.

Usar Gemini CLI en Visual Studio Code puede aportar mucho valor cuando querés analizar proyectos, revisar código, ordenar documentación técnica y trabajar con asistencia de IA sin salir del editor.

Pero para que eso funcione bien, conviene tener muy claro desde el principio si vas a trabajar con API key o con Vertex AI. Mezclar ambos caminos en el mismo entorno solo genera fricción.

En mi caso, la solución definitiva fue limpiar las claves anteriores, forzar el uso de Vertex AI y autenticar correctamente con Google Cloud desde la terminal.

Y una vez hecho eso, el flujo de trabajo mejoró muchísimo.

Conclusión

Si estás intentando usar Gemini CLI en VS Code y te encontrás con errores de autenticación, mi recomendación es revisar primero las variables de entorno y confirmar que no estén conviviendo métodos de acceso incompatibles.

A veces la diferencia entre que todo falle y que finalmente funcione está en unos pocos comandos bien aplicados.

En este caso, esos comandos fueron suficientes para transformar un entorno confuso en una configuración lista para trabajar con Vertex AI desde Visual Studio Code.