Google Workspace CLI
Google Workspace CLI (gws) - 专为人类与 AI 设计的一站式谷歌办公全能命令行工具
Google Workspace CLI (gws) 是一款功能强大的开源命令行界面工具,旨在简化 Google Workspace 各项服务的操作与集成。它支持 Drive、Gmail、Calendar、Sheets 等所有 API,通过动态加载 Google Discovery Service,无需手动维护命令列表即可同步最新功能。该工具提供结构化 JSON 输出,内置 100 多个 AI Agent 技能,支持多种身份验证方式,是开发人员和 AI 智能体管理谷歌生态的高效利器。
2026-03-17
534773.1K
Google Workspace CLI 产品信息
Google Workspace CLI (gws):为人类与 AI 打造的万能 Google 办公命令行工具
Google Workspace CLI(简称 gws)是一款旨在连接人类用户、AI 智能体与整个 Google Workspace 生态系统的强大命令行工具。无论是管理 Google Drive 中的文件、发送 Gmail 邮件,还是调度 Google Calendar 日程,gws 都能通过简洁的终端指令高效完成。它消除了繁琐的 API 调用,为开发者提供了结构化的数据交互体验。
注意: 本项目并非 Google 官方正式支持的产品,由社区与开发者积极维护,目前处于活跃开发阶段。
什么是 Google Workspace CLI (gws)?
Google Workspace CLI (gws) 是一个统一的命令行入口,涵盖了从 Google Drive 到 Gmail、Sheets、Docs、Chat 以及 Admin 等几乎所有 Google Workspace API。与传统的静态 CLI 不同,gws 不会预设固定的命令列表。它在运行时动态读取 Google 自身的 Discovery Service,这意味着当 Google 发布新的 API 端点或方法时,gws 能够自动识别并将其转化为可用的命令。
此外,gws 特别针对 AI Agent (AI 智能体) 进行了优化。所有 API 响应均采用结构化的 JSON 格式,配合内置的 40 多个(甚至扩展至 100 多个)Agent 技能,使得大语言模型(LLM)无需自定义工具即可轻松接管 Workspace 任务。
主要功能特性 (Features)
1. 动态 API 映射
通过 Google Discovery Service 动态构建命令面,确保对 Google Workspace 最新功能的实时支持,无需等待工具版本更新。
2. 人类友好与 AI 优先
- 针对人类: 摆脱复杂的
curl调用,提供完善的--help帮助文档、请求预览(--dry-run)以及自动分页功能。 - 针对 AI: 纯 JSON 输出,支持 NDJSON 流式分页,非常适合 LLM 理解和处理。
3. 高级身份验证体系
支持多种工作流,包括交互式 OAuth 登录、无头环境(CI/CD)导出流、服务账号以及预获取的 Access Token。凭据通过 AES-256-GCM 加密存储,保障安全性。
4. 增强的辅助命令 (Helper Commands)
除了自动生成的 API 方法,gws 还提供以 + 开头的便捷助手命令,如 +send(发邮件)、+agenda(查日程)、+upload(上传文件)等。
5. AI Agent 技能集成
提供 100 多个 .md 格式的 Agent 技能文件,涵盖常用工作流,并支持一键安装到 Gemini CLI 等环境中。
6. Model Armor 集成
内置 Google Cloud Model Armor 支持,可在 API 响应到达 AI 智能体之前自动扫描并过滤潜在的注入攻击,确保数据安全。
如何使用 (How to Use)
安装方式
您可以通过多种方式安装 Google Workspace CLI:
- npm (推荐):
npm install -g @googleworkspace/cli - Homebrew (macOS/Linux):
brew install googleworkspace-cli - Cargo (从源码构建):
cargo install --git https://github.com/googleworkspace/cli --locked
快速上手步骤
- 初始化配置: 运行
gws auth setup。这将引导您配置 Google Cloud 项目并启用相关 API。 - 身份验证: 运行
gws auth login进行 OAuth 登录。 - 列出文件: 执行
gws drive files list --params '{"pageSize": 5}'查看最近的云端硬盘文件。 - 发送邮件: 使用助手命令
gws gmail +send --to [email protected] --subject "Hello" --body "Hi"。
典型应用场景 (Use Case)
- 自动化报表生成: 结合脚本使用
gws sheets动态创建电子表格并填充数据,例如:gws sheets spreadsheets create --json '{"properties": {"title": "Q1 Budget"}}'。 - AI 个人助理: 将 gws 作为插件集成到 Gemini 或其他大模型中,让 AI 帮您总结今日日程(
gws calendar +agenda)或转换邮件为任务。 - CI/CD 运维通知: 在自动化流水线中使用
gws chat命令向 Google Chat 空间发送部署完成通知。 - 批量文件管理: 利用
--page-all和jq快速处理成千上万的 Drive 文件元数据。
常见问题解答 (FAQ)
Q: 登录时提示 "Access blocked" 或 403 错误怎么办? A: 这通常是因为您的 Google Cloud 项目处于“测试”模式,但未将您的账号添加为测试用户。请在 Google Cloud Console 的 OAuth 同意屏幕中,找到“测试用户”部分并添加您的邮箱地址。
Q: gws 是否支持服务账号?
A: 支持。您可以设置环境变量 GOOGLE_WORKSPACE_CLI_CREDENTIALS_FILE 指向您的服务账号 JSON 密钥文件即可实现静默登录。
Q: 为什么有些 Sheets 命令执行失败?
A: 在 Bash 等 Shell 环境中,! 是特殊字符。由于 Sheets 的区域表示法包含 !(如 Sheet1!A1),请务必使用单引号包裹参数值。
Q: 如何在没有浏览器的服务器上使用?
A: 您可以在有浏览器的机器上运行 gws auth export --unmasked 导出凭据,然后在服务器上通过环境变量导入该 JSON 文件。
架构与性能
Google Workspace CLI 采用两阶段解析策略:首先通过服务名称获取 Discovery 文档,随后构建动态命令树并解析剩余参数。这种设计保证了极高的灵活性与兼容性,无论 Google Workspace 的 API 如何演进,gws 都能保持步调一致。








