大家好,我是何三,独立开发者

56 天,近 2.5 万颗 Star。Google 把自己吃饭的家伙——Gmail、Drive、Calendar、Docs、Sheets、Chat 甚至 Admin——全部塞进了一个 CLI 工具里。

没开玩笑。不是第三方插件,不是社区魔改,是 Google Workspace 团队自己出的官方命令行工具,用 Rust 写的,就叫 gws

这玩意儿到底能干嘛?

简单说:你以前在浏览器里点鼠标才能干的事——发邮件、搜文档、建日历事件、查 Drive 文件、编辑 Sheets 表格——现在终端里一行命令搞定。

gws mail list --from "何三" --limit 5
gws docs create --title "周报" --body "# 本周完成..."
gws drive upload ./report.pdf

就这三条命令,干掉了你平时打开浏览器、登录账号、点几个标签页、来回切换窗口的整套操作。

背后的逻辑其实很简单

Google Workspace 的所有 API 其实一直都开放着,但以前你要用它们,得先注册 OAuth 客户端、配权限、写代码调接口——这一套下来少说半天就没了。

gws 做的事就是:把这些 API 全部封装成终端命令,自动处理认证,装好即用。

说白了,Google 自己终于受不了自家产品的碎片化了——Gmail 一个网站、Drive 一个网站、Calendar 又一个网站,它们之间确实可以互相跳转,但对于开发者来说,这体验太割裂了。

Rust 写的,意味着啥?速度够快,内存占用低,二进制文件扔到服务器上直接跑。这玩意儿甚至能在 CI/CD 流水线里当脚本用——你敢信?

gws 概念图

怎么上手?

安装非常简单,一条命令搞定:

cargo install gws

或者去 GitHub Releases 页面下载预编译的二进制文件。

装完跑一下认证:

gws auth login

浏览器打开,授权一下,完事。然后你就可以:

# 搜最近10封未读邮件
gws mail list --unread --limit 10

# 查看明天的日程
gws calendar list --tomorrow

# 搜一个文档
gws drive search "项目方案"

# 创建一张表格
gws sheets create --title "用户数据统计"

你说这功能有多复杂?其实不复杂。但就是这种"不复杂"的东西,Google 花了这么多年才做出来。

说几个让我惊喜的点

第一,它带 AI Agent Skills。

你没看错。gws 内置了 AI agent 能力,你可以直接跟它说自然语言指令,比如:

gws "帮我查一下上周张总发的邮件附件,下载到当前目录"

它会自动理解意图,调对应的 API 完成操作。这个我不敢说有多智能,但试了几次,准确率比我预期的高。

第二,自动补全是真香。

Tab 自动补全支持 bash、zsh、fish,装完 source 一下就行。命令和参数都能补,体验跟 gh(GitHub CLI)一个水准。

第三,它甚至能管理 Google Admin。

公司管理员可以用它来管理组织架构、用户权限。说实话,这块我没完全搞懂……但如果你是搞 IT 运维的,这玩意儿可能能让你少加班。

说到"把工具塞进终端"这个思路,我忍不住想到另一个项目——gh(GitHub CLI)。当年 GitHub 出 CLI 的时候,很多人也不理解:明明网页很好用,为什么非要用命令行?结果现在 gh 已经 44k Star,成了很多开发者的标配。

历史总是惊人的相似啊。

同类工具

如果你对这类"服务命令行化"的思路感兴趣,推荐两个:

  1. google/zx(45k Star)—— Google 出的另一个 CLI 工具,用来写脚本的,Node.js 写的。gws 干的是"操作 Google 服务",zx 干的是"让你用 JS 优雅地写 shell 脚本"。俩都是 Google 出品,但定位完全不同。

  2. cli/cli(44k Star)—— GitHub 官方 CLI,如果你用 GitHub 还没装这个,真的该试试了。

装不装都行,看你自己。但如果你每天都在 Chrome 和 Terminal 之间来回切,gws 可能就是那个让你效率翻倍的小工具。

本文使用 MGO 编辑并发布

关注"何三笔记",回复"mgo" 免费下载使用