核心用法
ez-google 是一套面向 Google Workspace 的命令行工具集,通过 Python 脚本封装 Google 官方 API,提供统一的 CLI 接口管理邮件、日程、文件、文档、表格、演示文稿、联系人和聊天服务。
认证流程:首次使用需执行 auth.py login 获取授权链接,用户点击后在浏览器完成 Google 账号授权,粘贴回调 URL 完成 auth.py complete 即可。Token 本地存储于 ~/.simple-google-workspace/token.json,支持自动刷新。
典型操作:
- Gmail:
gmail.py search "query" 搜索邮件,send/draft 发信或存草稿 - 日历:
gcal.py create "会议" "2024-01-15T10:00" "2024-01-15T11:00" 创建日程 - Drive:
drive.py search "报告" 查找文件,download FILE_ID 下载内容 - Docs/Sheets/Slides:支持创建、读取、追加、替换等文档操作,Sheets 使用
; 分隔多行数据 - 联系人:
people.py search "张三" 查找联系人信息
显著优点
1. 一站式覆盖:单 Skill 集成 8 项 Google 核心服务,无需分别安装多个工具
2. 官方 API 保障:底层调用 google-api-python-client 等官方库,接口稳定可靠
3. 命令直观:采用 资源+动作 的命名风格(如 sheets.py append),学习成本低
4. 本地认证优先:OAuth token 本地存储,支持自动刷新,符合安全最佳实践
5. 开发友好:返回结构化数据,便于脚本化和自动化流水线集成
潜在局限
1. 权限范围较广:需一次性授权 9 个 API scope,对权限敏感的用户可能犹豫
2. 第三方 OAuth Worker:默认流程可选使用 ezagentauth.com 托管服务(虽便利但 token 经过第三方),安全意识高的用户需显式使用 --local 或环境变量
3. Token 文件权限:当前依赖系统默认权限,未强制设置为 600,多用户环境存在泄露风险
4. Workspace 功能限制:Chat 模块仅支持 Google Workspace 账号,个人 Gmail 账号无法使用
5. 错误处理简约:CLI 错误信息较为技术化,普通用户排查问题可能困难
适合人群
- 开发者/DevOps:需要将 Google Workspace 集成到自动化脚本或 CI/CD 流程
- 效率极客:习惯命令行操作,追求快速批量处理邮件、日程、文档
- 小型团队管理员:批量管理共享云端硬盘文件、统一导出联系人数据
- 数据分析师:通过 Sheets API 自动化数据抓取和报表更新
常规风险
| 风险项 | 说明 | 缓解建议 |
|--------|------|----------|
| Token 泄露 | 本地 JSON 文件若被其他用户读取 | 手动设置 `chmod 600 ~/.simple-google-workspace/token.json` |
| 第三方中间人 | 使用 ezagentauth.com 时 token 经过外部服务器 | 始终使用 `--local` 或环境变量认证 |
| 权限过度授权 | 9 个 API scope 覆盖敏感数据 | 授权前审查 scope 列表,定期在 Google 账号页撤销 unused 权限 |
| 服务中断 | 依赖 Google API 配额与可用性 | 关注 API 配额限制,关键操作添加重试逻辑 |