概述
gws-shared 是 Google Workspace CLI (gws) 的共享配置技能,提供统一的认证机制、全局标志和输出格式规范,使 AI Agent 能够安全、高效地调用 Google Workspace API。
核心用法
- 认证方式:支持浏览器 OAuth 交互登录 (
gws auth login) 和服务账号凭证 (GOOGLE_APPLICATION_CREDENTIALS) - 标准 CLI 语法:
gws <service> <resource> [sub-resource] <method> [flags] - 数据操作:通过
--params传递 URL 参数,--json传递请求体,--upload支持文件上传 - 分页处理:
--page-all自动分页输出 NDJSON,--page-limit和--page-delay控制分页行为
显著优点
1. 统一接口:一套 CLI 覆盖 Sheets、Drive、Gmail 等所有 Google Workspace 服务
2. 灵活输出:支持 JSON、Table、YAML、CSV 多种格式,便于脚本集成
3. 安全内置:--dry-run 本地验证,--sanitize 调用 Model Armor 筛查敏感内容
4. Shell 友好:提供 zsh 特殊字符处理指南,避免常见语法陷阱
局限性与注意事项
- 依赖外部二进制
gws必须预先安装并置于$PATH - zsh 用户需特别注意
!历史扩展问题 - 复杂 JSON 参数需要仔细处理引号嵌套
- 服务账号需正确配置 IAM 权限才能访问目标资源
适合人群
- 需要自动化管理 Google Workspace 的 DevOps 工程师
- 开发 Google Workspace 集成的应用开发者
- 需要批量处理 Sheets/Drive 数据的运维人员
风险提示
- 写/删除操作默认需用户确认,建议生产环境配合
--dry-run使用 - 凭证文件路径需妥善保管,避免泄露服务账号密钥
- 分页请求注意 API 配额限制,合理设置
--page-delay