谷歌发布官方 CLI,可操作所有谷歌文档

今天上午的时候,Google Workspace CLI 上线到了 GitHub,挂在 Google Workspace 的官方组织名下

图片[1]-谷歌发布官方 CLI,可操作所有谷歌文档-AI Express News
GitHub:https://github.com/googleworkspace/cli

我开始写这篇文章的时候,这个项目是 2700 个 Star;
当我发出去的时候,重新截了个图,已经有 3500 个 Star 了

草...刚发完预览,又变成 3700 个 Star..

图片[2]-谷歌发布官方 CLI,可操作所有谷歌文档-AI Express News
快速增长的 Star

这个项目,最早由 Google Cloud AI 的 Director Addy Osmani 亲自在推特上宣布

图片[3]-谷歌发布官方 CLI,可操作所有谷歌文档-AI Express News
https://x.com/addyosmani/status/2029372736267805081

README 里有一句声明:这不是谷歌官方支持的产品

图片[4]-谷歌发布官方 CLI,可操作所有谷歌文档-AI Express News
This is not an officially supported Google product

但挂在官方 org 下、主要开发者 Justin Poehnelt 是谷歌 Workspace 开发者关系团队的成员,Addy Osmani 亲自背书。这个项目的定位大概是「谷歌认可,但不做服务承诺」


它在解决一个具体问题

我先说个观点:
那些对人类「界面友好」的产品,对 Agent 并不友好

过去三十年,所有主流生产力软件都是为人的眼睛和鼠标设计的。邮件、文档、日历、云盘,全部是点击和拖拽。Agent 来了,它不能点击,也看不懂网页界面。

Agent 所需要的,是:发一个命令,收到结构化的数据,然后继续干活

Google Workspace CLI 把 Google Workspace 的所有 API,包成了一行行 Agent 可以直接调用的命令,结果全部是 JSON,可以直接解析和处理

比如,让 Agent 列出最近的 10 个文件:

gws drive files list --params '{"pageSize": 10}'

比如,新建一个表格:

gws sheets spreadsheets create --json '{"properties": {"title": "Q1 预算"}}'

比如,发一条 Chat 消息(--dry-run 是预览模式,不会真的发出去):

gws chat spaces messages create 
  --params '{"parent": "spaces/xyz"}' 
  --json '{"text": "部署完成"}' 
  --dry-run

所有输出,包括报错,都是 JSON


覆盖 Google Workspace 的全部主要产品

Drive、Gmail、Calendar、Sheets、Docs、Chat、Admin,以及其他所有 Workspace API,都在支持范围里

图片[5]-谷歌发布官方 CLI,可操作所有谷歌文档-AI Express News
覆盖产品范围占位

有一个设计值得单说:它不预设命令列表

每次运行时,它直接去读谷歌自己的 API 目录(Discovery Service),实时生成命令。谷歌哪天新增了一个 API,这个工具自动就能用,不需要等版本更新

认证方面覆盖了所有场景:本地登录、CI 环境、服务器端 Service Account,以及直接传入已有的 token

并且,这些凭证在本地加密存储


Agent 接入有三种方式

无论用哪种 Agent 工具,都可以接进来

作为命令行工具直接用
安装之后,Agent(比如 Claude Code、OpenClaw 等)可以直接调用 shell 命令,拿到 JSON 结果。一个人同时调度多个 Agent 处理 Workspace 里的事务,靠的就是这层接口

作为 MCP Server
一行命令启动:

gws mcp -s drive,gmail,calendar

之后在 Claude Desktop、Gemini CLI、VS Code 等任何支持 MCP 的客户端里,都可以直接调用这些工具

通过 Skills 接入
仓库里内置了 100 多个 SKILL.md 文件,覆盖所有支持的 API,还有针对 Gmail、Drive、Docs、Calendar、Sheets 的 50 个常用操作配方

# 一行命令安装全部
npx skills add https://github.com/googleworkspace/cli

OpenClaw 用户可以直接 symlink 进去,工具检测到没有安装时会自动提示安装


OpenClaw 的作者,想一决高下

Peter Steinberger 是 OpenClaw 的开发者,别人是当红炸子鸡,他是当红的小龙虾

他几个月前自己做了一个叫 gog 的 Google Workspace CLI(gogcli.sh),起因正是觉得市面上没有好用的同类工具

今天,Google Workspace CLI 发布的时候,他在推特上回应说:会跑 eval 测试,看看哪个工具更适合 Agent 用,「但看到需要的 JSON 命令格式,我不太确定了」

图片[6]-谷歌发布官方 CLI,可操作所有谷歌文档-AI Express News
https://x.com/i/status/2029363714642837806

两个工具的命令风格确实不同。gog 更接近日常语言:

gog gmail search 'newer_than:7d'

Google Workspace CLI 更接近 API 原始结构:

gws drive files list --params '{"pageSize": 5}'

对 Agent 来说,封装层越高、命令越接近自然语言,理解成本越低,出错机会也越少。eval 结果出来之前,哪种更适合 Agent,没有定论

Addy Osmani 在推文里说欢迎 Peter 提 feature request


还有一个细节

仓库根目录有一个 AGENTS.md,和 README.md 并排放着

图片[7]-谷歌发布官方 CLI,可操作所有谷歌文档-AI Express News
https://github.com/googleworkspace/cli/blob/main/AGENTS.md

这是专门写给 AI 编程助手(比如 Claude Code)的开发贡献指南,告诉它怎么给这个项目写代码、提 PR、做安全校验

文件里有一句话值得留意:「这个 CLI 经常被 AI Agent 调用,写代码时永远假设输入可能是恶意的」

开发者已经默认自己的代码库会被 AI 参与维护,同时也默认调用方会是 Agent

gog 仓库里也有同名文件,格式一致。这大概会成为开源项目的标配之一

另外,这个工具支持接入 Google Cloud 的 Model Armor,在 API 返回内容到达 Agent 之前,自动扫描是否存在 prompt injection 攻击,可以设置成警告或者直接拦截。Agent 作为调用方,本身也是攻击面,这个设计在说同一件事

当前版本 v0.3.4,仍在活跃开发,v1.0 之前可能有 breaking changes

GitHub:https://github.com/googleworkspace/cli

gws CLI
https://github.com/googleworkspace/cli

<原文链接:https://mp.weixin.qq.com/s/beVJFuvyp4zLjXnO4r74wA

© 版权声明
THE END
喜欢就支持一下吧
点赞12 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容