用途:gws 用于在命令行统一操作 Google Workspace 各项服务,涵盖 Drive、Gmail、Calendar、Sheets、Docs、Slides、Chat、Tasks、Admin、Meet、Forms、Keep 及其他 Workspace API,面向人类与 AI 智能体,输出结构化 JSON,附带 100+ 智能体技能。它不是 Google 官方支持的产品,项目处于活跃开发中,向 v1.0 推进期间可能有破坏性变更。
主要能力:命令面不是静态列表,而是运行时读取 Google Discovery Service 动态构建,Google 新增 API 端点或方法后可自动获取,无需更新。通用调用模式为 gws <service> <resource> <method> [--params '{ JSON }'] [--json '{ JSON }'] [flags]。常用全局参数包括 --help、--params、--json、--dry-run、--page-all、--page-limit、--page-delay、--upload、--account、--sanitize;可用 gws schema drive.files.list 之类的命令查看任意方法的请求/响应结构。Drive 支持文件列表、搜索、上传、导出、移动、分享、删除与共享云端硬盘管理;Gmail 支持消息列表与搜索、发送、标签管理、草稿与休假自动回复;Calendar 支持事件增删改查、日历列表、空闲查询与重复事件;Sheets 支持表格创建、单元格读写、追加、清空与批量更新;此外还有 Docs、Slides、Chat、Tasks、Meet、Forms、Admin、Keep、People 等服务的对应命令。
使用方式:需 Node.js 18+、一个 Google Cloud 项目(用于 OAuth 凭据)以及可访问 Workspace 的 Google 账号。推荐用 npm install -g @googleworkspace/cli 全局安装(捆绑原生二进制,无需 Rust),再以 gws --version 验证;也可从 GitHub Releases 下载预编译二进制,或用 cargo install --git https://github.com/googleworkspace/cli --locked 从源码构建,或 nix run github:googleworkspace/cli。认证可用 gws auth setup 与 gws auth login;凭据以 AES-256-GCM 加密静态存储,密钥保存在操作系统钥匙串。支持多账号(--account、gws auth list、gws auth default、GOOGLE_WORKSPACE_CLI_ACCOUNT)。无 gcloud 时可手动在 Cloud Console 配置 OAuth(桌面应用类型),并把 client_secret.json 放到 ~/.config/gws/;需在 OAuth 同意屏幕把自己加入测试用户,否则登录会因 Access blocked 失败。无头/CI 场景可用 gws auth export --unmasked 导出后配合 GOOGLE_WORKSPACE_CLI_CREDENTIALS_FILE;服务账号亦通过该环境变量,域范围委派用 GOOGLE_WORKSPACE_CLI_IMPERSONATED_USER;也可用 GOOGLE_WORKSPACE_CLI_TOKEN 传入已有访问令牌。凭据优先级为访问令牌、凭据文件、按账号加密凭据、明文凭据;账号解析顺序为 --account 参数、环境变量、accounts.json 默认值。环境变量亦可写入项目根目录 .env。
适用场景与限制:适合以脚本或智能体方式批量处理 Drive 文件、收发 Gmail、管理日历与表格、创建文档幻灯片、发消息与任务、管理用户组等自动化流程。未验证(测试模式)OAuth 应用约有 25 个作用域上限,推荐作用域预置含 85+ 个作用域会失败,尤其对 @gmail.com 账号,应改用 -s 或 --scopes 选择单个服务。Sheets 范围中的 ! 在 bash 中会被当作历史展开,需始终用单引号包裹。其余价格、收费、效果等信息资料暂未提供。