核心用法
zoho 是一款面向 Zoho Mail 的终端命令行工具,支持邮件的阅读、搜索、发送、归档、删除等全套管理功能。所有输出默认为 JSON 格式,可直接被脚本、自动化工具及 AI Agent 消费;也可通过 --md 切换为 Markdown 表格便于人工阅读。安装方式灵活,支持 Homebrew、uv 和 pipx,要求 Python 3.11+,兼容 macOS、Linux 和 Windows。
使用前需完成一次性配置:zoho config init 设置 OAuth 客户端凭证,zoho login 完成浏览器授权,后续 token 自动刷新并存储于系统 keyring,无需手动管理。
主要命令覆盖:
- 邮件操作:
list、search、get查看内容、send发送(支持 HTML、多附件)、mark-read/unread、move、archive、delete等状态管理 - 附件处理:
attachments列附件、download-attachment下载到指定路径 - 文件夹管理:
folders list/create/rename/delete - 配置管理:
config show/path/init
全局参数支持 --account 多账户切换、--config 自定义配置路径、--debug 输出 HTTP 日志。
显著优点
1. 原生 JSON 输出:默认 JSON 管道友好,配合 jq 可快速构建复杂自动化流程,无需解析人类可读文本
2. 无第三方依赖:直接调用 Zoho API,不经过中间代理服务,数据不流经第三方
3. 自动 Token 管理:OAuth token 存储于系统 keyring,自动刷新,无感认证
4. 多平台支持:Python 跨平台,Homebrew/uv/pipx 多种安装方式
5. 丰富的邮件操作:支持 HTML 邮件、多附件、批量操作(mark/move/delete),满足自动化需求
潜在缺点与局限性
1. Python 3.11+ 依赖:旧系统可能需升级 Python 环境
2. OAuth 配置门槛:首次使用需创建 Zoho OAuth 应用并配置 client_id/secret,对非技术用户有一定门槛
3. 功能边界:目前仅覆盖 Zoho Mail,不支持 Calendar、Contacts 等其他 Zoho 服务
4. 错误处理依赖 stderr:需正确重定向 stderr 获取错误 JSON,初学者易混淆 stdout/stderr
5. 社区规模:由个人开发者维护(robsannaa),长期维护稳定性待观察
适合人群
- 开发者和 DevOps 工程师:需要自动化邮件处理、告警通知、数据提取
- 系统管理员:批量管理多账户邮件、归档策略
- AI Agent/自动化工作流:JSON 输出天然适合 LLM 工具调用和脚本编排
- 技术型高级用户:偏好终端效率,不愿使用 Web 界面
常规风险
- OAuth 凭证安全:
client_id和client_secret存储于本地配置文件,需确保文件权限正确(建议 600) - Token 泄露:系统 keyring 安全性依赖操作系统,共享设备或弱密码环境存在风险
- 误操作风险:
delete --permanent直接硬删除,无二次确认,批量操作时需格外谨慎 - CI/Headless 环境:需通过
ZOHO_TOKEN_PASSWORD环境变量提供加密密码,存在密钥管理挑战 - API 限流:依赖 Zoho API 限流策略,高频自动化场景需控制调用频率
来源可信度
由个人开发者 robsannaa 开源维护,GitHub 仓库公开,代码可审计。非官方 Zoho 出品,但直接调用官方 API,无中间层。