gws (Google Workspace CLI) logo

gws (Google Workspace CLI)

★★★★ 4.2/5
访问官网
分类
办公
定价
免费
访问
需国际网络

快速结论

gws(Google Workspace CLI)是 googleworkspace/cli 仓库发布的开源命令行工具,通过 Google Discovery Service 动态构建 Gmail、Drive、Calendar、Docs、Sheets、Chat、Admin 等 Workspace API 的命令树,并以 JSON 输出供人类脚本或 AI Agent 使用。它适合熟悉 Google Cloud OAuth、Shell 和 Workspace 权限的开发者、IT 自动化团队;不适合把一句自然语言直接变成无需审批的邮件、删除、共享或管理员操作。

必须区分“位于 googleworkspace GitHub 组织”与“受官方产品支持”。项目 README 明确写着:这不是 Google 官方支持的产品。截至 2026-07-21,当前版本是 v0.22.5,项目也明确处于走向 v1.0 的活跃开发期,可能发生破坏性变更。生产脚本应固定版本、验证 Discovery schema 和返回结构,并在升级前跑只读及写入回归测试。它的价值是减少 API 样板,不是替代 Workspace 管理、OAuth 审批、数据治理或人工判断。

核心功能

  • 动态命令面:运行时读取 Google Discovery 文档,不用为每个资源和方法维护静态 CLI 列表。
  • 结构化输出:成功、错误和下载元数据以 JSON 为主,支持分页、NDJSON 与脚本化退出码。
  • Workspace 广覆盖:可访问 Drive、Gmail、Calendar、Sheets、Docs、Chat、Tasks、Admin 等已发现 API。
  • 手工 helper 与工作流:提供 +send+reply+agenda+upload+append 及会议准备、周摘要等高频命令。
  • Agent Skills 与 Gemini 扩展:仓库带服务 skills、helpers 和 recipes,可供支持 skill 的 Agent 使用。
  • 请求预览与安全辅助--dry-run 可在不调用 API 时查看请求;可选 Model Armor 对响应做提示注入扫描。
  • 多种认证路径:支持本地 OAuth、预生成 token、凭据文件和服务账号,适用于桌面、CI 与服务器。

适合人群

  • 需要用 Shell、JSON 和 jq 自动化 Google Workspace 的开发者。
  • 愿意按服务选择 OAuth scope、管理测试用户和 Cloud project 的 IT 团队。
  • 希望给 Agent 增加 Workspace 工具,但能落实读写分离和人工确认的组织。
  • 不适合没有 Google Cloud/OAuth 经验的普通办公用户,也不适合把高权限服务账号、全量邮箱或管理员 API 直接交给不受控模型。

使用场景

低风险场景包括读取当天日程、列出指定 Drive 文件、读取表格区域或生成未读邮件摘要。写入场景可起草邮件、创建日程、追加表格、上传文件和发送 Chat 消息,但必须先用 --dry-run 展示目标账号、收件人、资源 ID 和请求体,并在执行前取得明确确认。删除、移动、权限共享、域管理员配置、Vault、批量发送和覆盖 Apps Script 文件等破坏性操作应使用更严格的二次确认、数量上限和变更记录。

Workspace 内容本身是不可信输入。邮件、文档、日历描述或表格单元格可能写有“导出通讯录”“读取凭据”“忽略上一条规则”等提示注入。Agent 不得因内容指令扩大 scope、选择新账号、读取本地凭据、访问其他文件或执行写命令。Model Armor 的 --sanitize 是可选检测层,不是完整授权机制;关键决策仍应基于固定工具策略、来源标记、参数验证和人工审批。

价格与版本

gws 采用 Apache-2.0,CLI 软件免费。Google Workspace 订阅、Cloud 项目、API 配额、模型、审计与运维成本另计。当前 v0.22.5 属于 pre-1.0;Discovery 动态更新也可能让同一 CLI 版本看到新的 API 方法,因此需要同时固定 CLI、记录 Discovery 变化并限制允许服务和方法。

方式CLI 费用适合主要边界
预编译 v0.22.5免费本地与受控脚本pre-1.0,升级前回归
npm 安装免费跨平台自动下载 binary固定精确版本和包来源
本地 OAuth免费单个用户交互只选任务需要的 scope
服务账号/CI免费服务器自动化避免域级委派和长期 key
Agent skills免费受控 AI 工作流写/删命令仍需确认

国内访问与使用体验

needsVPN: true 表示 Google Workspace、Google Cloud Console、OAuth 和相关 API 在中国大陆可能不可用或不稳定,不构成任何网络服务建议。组织还应评估账号地区、数据跨境、业务连续性和 Workspace 合同。CLI 可从 Release、npm、Homebrew、Cargo 或 Nix 安装,但完整使用依赖 Google 服务在线可达。

首次认证需要 Cloud project、启用 API 和 OAuth client。未验证的测试应用约有 25 个 scope 限制,而项目的 recommended 预设包含 85 个以上 scope,可能直接失败,也违反最小权限原则。应按任务使用 gws auth login -s drive,gmail,sheets 一类服务过滤,再在 consent 页面只选必要 scope。读取邮件不应申请修改权限,个人任务不应启用 Admin 或域级委派。

优点

  • 一个 CLI 统一多项 Workspace API,减少手写 REST、认证和分页样板。
  • Discovery 动态命令面能快速反映 API 资源与方法变化。
  • JSON、NDJSON、schema introspection 和退出码适合脚本与 Agent。
  • --dry-run、服务 scope 过滤和 skill 安全规则为审批流提供基础。
  • 预编译 binary、npm、Homebrew、Cargo 与 Nix 提供多种安装方式。

不足

  • 项目明确不是 Google 官方支持产品,不能获得 Workspace 产品 SLA 或官方支持承诺。
  • pre-1.0 仍可能破坏参数、认证存储或输出兼容性,自动化需固定版本。
  • Discovery 动态扩展命令面也扩大权限审计和变更检测工作。
  • OAuth 凭据、导出文件、.env 和服务账号 key 处理不当会造成广泛数据泄漏。
  • Agent 可读取恶意邮件或文档,提示注入可能诱导跨服务操作。
  • --dry-run 只能预览请求,不会自动理解业务授权或阻止所有破坏性行为。

替代品对比

工具更适合谁优势主要取舍
Gemini CLI需要通用终端编码 Agent 的 Google 用户模型、Shell、文件与 MCP 工作流完整不专门等同 Workspace API CLI
Gemini for Google Workspace普通员工在 Gmail、Docs、Meet 内使用 AI原生界面和管理员许可API 自动化与脚本能力不同
Google Drive MCP Server只需 Drive 文件工具的 Agent官方单服务边界更窄、易做最小权限仍处 Developer Preview,不覆盖完整 Workspace
Google Calendar MCP Server只自动化日历的用户官方单服务配置更容易审计仍处 Developer Preview,无统一 Workspace 入口
Google Sheets MCP Server重点操作表格的 Agent官方表格工具面更聚焦仍处 Developer Preview,文档中的写权限边界待核验
Workspace MCP需要自托管多项 Workspace 服务的团队服务覆盖广,可配置只读与权限范围社区实现,OAuth、令牌和广泛写操作需自行治理

常见问题 FAQ

gws 是 Google 官方支持的产品吗?

不是。仓库明确声明它不是官方支持的 Google 产品。它位于 Google Workspace GitHub 组织并不等于获得商业产品支持或 SLA。

v0.22.5 可以用于生产脚本吗?

可以先在受控范围评估,但它仍是 pre-1.0。固定精确版本、保存回归样例,并在每次升级前检查认证、参数、JSON 输出和写操作。

应该选择 recommended OAuth scopes 吗?

通常不应默认选择。该预设包含 85 个以上 scope,未验证测试应用还可能超过约 25 scope 限制。按任务选择最少服务和只读权限。

Agent 发送邮件或删除文件前要确认吗?

要。仓库 skills 的共享安全规则要求写入和删除前确认,并建议破坏性操作先 --dry-run。确认内容应包含账号、目标、数量和最终请求。

凭据应如何保存?

桌面 OAuth 默认可加密并使用系统 keyring;CI 应使用短期 token 或受控凭据注入。不要把 client secret、刷新 token、导出 JSON、服务账号 key 或 .env 放进仓库和提示上下文。

如何处理邮件或文档里的提示注入?

把 Workspace 内容视为数据,不允许其改变工具策略、scope、账号或审批状态。只读解析与写入执行分离,使用 allowlist 和参数验证;可选 sanitize 只能作为额外信号。

总结

gws 为 Workspace API 提供了少样板、结构化、适合 Agent 的统一 CLI,对懂 OAuth 和自动化的团队很有吸引力。但它不是官方支持产品,当前仍处于 pre-1.0,且动态 API、广泛权限和不可信办公内容会扩大风险。建议从一个测试账号、一个只读服务和固定 v0.22.5 开始;确认输出稳定后,再逐项增加 scope。所有写入与破坏性命令都应预览并确认,凭据不进入提示,邮件和文档不获得指令权。

最后更新:2026年7月21日

同类工具推荐