- Herramienta para controlar toda la API de Google Workspace desde una sola CLI, con soporte para Drive, Gmail, Calendar, Sheets, Docs, Chat, Admin y más
- Basada en Google Discovery Service, genera dinámicamente la configuración de comandos en tiempo de ejecución, por lo que cuando se agrega una nueva API se refleja automáticamente
- Incluye más de 100 skills para agentes de IA y permite la integración con LLM mediante salida JSON estructurada
- Ofrece varios métodos de autenticación como OAuth, Service Account y entornos CI, además de funciones de seguridad en las respuestas mediante Model Armor
- Una CLI centrada en la automatización tanto para personas como para IA, que mejora la administración unificada y la eficiencia de automatización dentro del ecosistema de Google Workspace
Descripción general
gws es una CLI unificada dedicada a Google Workspace que permite ejecutar todas las API de Drive, Gmail, Calendar, Sheets, Docs, Chat, Admin y más desde una sola línea de comandos
- Genera automáticamente la configuración de comandos mediante Google Discovery Service, y cuando se agregan nuevos endpoints de API se reflejan de inmediato
- Todas las salidas se entregan en formato JSON estructurado, lo que facilita la integración con agentes de IA o scripts de automatización
- El proyecto está en desarrollo activo y antes de la versión v1.0 puede haber cambios importantes
Funciones principales
- Ofrece funciones de CLI amigables para humanos como autocompletado por tabulación, --help, --dry-run y paginación automática
- Incluye más de 100 skills basados en
SKILL.md para la integración con agentes de IA
- Incluye más de 50 recetas avanzadas para servicios principales como Gmail, Drive, Docs, Calendar y Sheets
- Al instalar la extensión de Gemini CLI, el agente de Gemini puede invocar directamente los comandos y skills de
gws
- Mediante el modo servidor MCP (Model Context Protocol), es posible exponer la API de Workspace como herramientas en Claude Desktop, Gemini CLI, VS Code y más
Métodos de autenticación
- Autenticación interactiva local: guarda credenciales cifradas con AES-256-GCM en el keyring del sistema operativo
- Configuración manual de OAuth: permite crear clientes directamente desde Google Cloud Console
- Autenticación asistida por navegador o agente: procesa la autorización OAuth de forma manual o automática
- Autenticación para entornos CI/servidor: exporta credenciales con
gws auth export y las define mediante variables de entorno
- Soporta Service Account y tokens preemitidos; la prioridad es token > archivo de credenciales > almacenamiento en keyring
Skills para agentes de IA
- Las más de 100 skills incluidas en el repositorio automatizan cada API y flujos de trabajo generales
- Con el comando
npx skills add se pueden instalar todas las skills o solo algunas
- En entornos OpenClaw, las skills pueden sincronizarse mediante enlaces simbólicos o copia
- La skill
gws-shared incluye instalación automática cuando la CLI no está instalada
Extensión de Gemini CLI
- Se instala con el comando
gemini extensions install https://github.com/googleworkspace/cli
- Después de instalarla, el agente de Gemini CLI puede invocar directamente los comandos y skills de
gws
- Hereda automáticamente la información de autenticación de
gws, por lo que puede usarse sin iniciar sesión por separado
Función de servidor MCP
- Con el comando
gws mcp se ejecuta un servidor MCP para exponer la API de Workspace a clientes compatibles con MCP
- Ejemplo:
gws mcp -s drive,gmail,calendar
- Cada servicio agrega entre 10 y 80 herramientas, y pueden seleccionarse según el límite de herramientas del cliente (50 a 100)
- Las banderas
--workflows y --helpers permiten exponer herramientas de flujo de trabajo y auxiliares
Funciones avanzadas
- Carga multipart: realiza simultáneamente la subida de archivos y la creación de metadatos
- Control de paginación: ofrece las opciones
--page-all, --page-limit y --page-delay
- Integración con Model Armor: analiza las respuestas de la API para bloquear inyecciones de prompt
- Se controla mediante las variables de entorno
GOOGLE_WORKSPACE_CLI_SANITIZE_TEMPLATE y GOOGLE_WORKSPACE_CLI_SANITIZE_MODE
Arquitectura
- Funciona con una estructura de análisis en 2 etapas
- Identifica el servicio con el primer argumento
- Obtiene el documento Discovery (caché de 24 horas)
- Genera el árbol
clap::Command
- Reanaliza los argumentos y realiza la autenticación
- Ejecuta la solicitud HTTP
- Todos los resultados (éxitos, errores y metadatos) se muestran en una estructura JSON
Solución de problemas
- Si la API no está habilitada, aparece el error
accessNotConfigured
- Haz clic en el enlace del campo
enable_url para habilitar la API y vuelve a intentarlo
- También puedes habilitar automáticamente las API necesarias con el comando
gws auth setup
Desarrollo y despliegue
- Licencia Apache-2.0. Rust (99.5%)
- No es un producto oficial de Google; es un proyecto open source no oficial
2 comentarios
A diferencia de
gog, es interesante su enfoque de generar dinámicamente comandos para todas las API de Google.Además, como el desarrollador es Justin Poehnelt, de DevRel de Google Workspace, me da más confianza.
Comentarios de Hacker News
En el mundo de la IA y los MCPs, parece que de repente las empresas están empezando a construir herramientas API/CLI decentes
Parece ser la versión CLI de Workspace Studio
Da gusto ver que Google se mueve en la dirección de cómo los desarrolladores realmente quieren usar las apps
Me parece mucho mejor que un dashboard de Google o una librería de terceros mediocre
Aunque Google dice que no tiene soporte oficial, probablemente esté mejor respaldado internamente que algo externo
GCP Next está programado para el 22 al 24 de abril
Ojalá que este proyecto siga recibiendo mantenimiento después de eso
Me pregunto por qué se usa
npmpara instalar un binario derustÚltimamente las habilidades de agentes quieren CLI, así que estaría bien que esta tendencia se consolidara
Me imagino a todos los CTOs emocionados tratando de conectar esto a su instancia de OpenClaw
Que los comandos disponibles cambien dinámicamente parece un antipatrón, aunque tal vez la IA pueda manejar eso
Ojalá Apple hiciera algo parecido con iCloud
Interesante, pero da un poco de miedo. Si esto no es un producto oficial de Google, podría incluso violar los TOS