Este proyecto forma parte del taller GCP AI Agent Starter Kit. Proporciona una interfaz web construida en Next.js con autenticación por Google, lista para integrarse con una API desplegada en Cloud Run.
👉 Puedes usar esta base clonándola y conectándola a tu propio repositorio para luego personalizarla.
No es necesario instalar dependencias desde cero. Solo sigue estos pasos:
# 1. Clona este repositorio
git clone https://github.com/macespinoza/agentui-withlogin
cd agentui-withlogin
# 2. Elimina la referencia al repositorio original
git remote remove origin
Antes de subir tu versión del proyecto, realiza este cambio:
- Abre el archivo:
src/app/api/agent/route.ts
- Reemplaza la lógica de la URL con la dirección de tu servicio en Cloud Run, por ejemplo:
const url = `https://tu-api-cloudrun.a.run.app/agent?` +
new URL(request.url).searchParams.toString();
Este cambio permite que tu frontend reenvíe correctamente las peticiones al backend.
Una vez hayas hecho tus modificaciones:
# 3. Agrega tu propio repositorio remoto
git remote add origin <tu_repo_propio>
git push -u origin main
git add .
git commit -m "update"
git push
- Ve a la Consola de Google Cloud.
- Crea un ID de cliente OAuth (tipo Aplicación Web).
- Agrega este URI de redirección:
http://[TU_DOMINIO]/api/auth/callback/google
Por ejemplo, en desarrollo:
http://localhost:3000/api/auth/callback/google
Define las siguientes variables en .env.local
o en Environment Variables si usas Vercel:
GOOGLE_CLIENT_ID=tu_CLIENT_ID_de_Google
GOOGLE_CLIENT_SECRET=tu_CLIENT_SECRET_de_Google
NEXTAUTH_SECRET=clave_secreta_aleatoria
🔐 Puedes generar tu NEXTAUTH_SECRET
desde esta herramienta online:
https://auth-secret-gen.vercel.app/
En el archivo:
src/app/page.tsx
La API espera que se envíen las siguientes variables:
msg
: mensaje del usuario.idagente
: identificador para mantener el historial conversacional.
Puedes adaptarlas según las necesidades de tu solución.
Este proyecto está preparado para ser desplegado directamente en Vercel.
Solo debes configurar las variables de entorno mencionadas anteriormente.
Gracias por revisar este repositorio.
Si te interesa colaborar, aprender más o invitarme a dar una charla, puedes escribirme o seguirme en LinkedIn:
Miguel Ángel Cotrina Espinoza