返回精选库
Gog·办公与效率

Gog 使用指南:让 OpenClaw 只读查询 Gmail

本文目录

Gog 让 OpenClaw 通过独立的 gog 命令访问 Gmail、Calendar、Drive 等 Google 服务。第一次接入建议只做一件事:只读查找自己最近七天的邮件。这能先检验 Skill、命令行工具和 Google 授权是否真正连通,再决定要不要开放其他服务或写入权限。准备一台运行 OpenClaw 的机器、可用的终端、自己的 Google 账号和一个由你管理的 Google Cloud 项目。

先分清两个安装对象

OpenClaw 已可能自带名为 gog 的 Skill。先在运行 Agent 的机器上查看:

命令
openclaw skills info gog
openclaw skills check

若它已经存在且可用,不必覆盖。若确实缺少 Skill,并决定使用 ClawHub 上 steipete 发布的 v1.0.0,才在自己的 OpenClaw 环境安装:

命令
openclaw skills install @steipete/gog --version 1.0.0

Skill 是告诉 Agent 怎样调用工具的说明,不会替你安装 gog 可执行文件,也不会完成 Google 授权。即使 OpenClaw 列出了 Skill,缺少 gog 二进制文件时仍无法使用。ClawHub v1.0.0 的简表和当前 OpenClaw 内置 Skill 不完全一样;已有内置版时先保留它。

安装 gog 命令并准备最小授权

在 macOS 或 Linux 且已有 Homebrew 的机器上,官方安装方式是:

命令
brew install openclaw/tap/gogcli
gog --version

这里安装的是 gogcli 项目的 gog 命令,不是上面的 ClawHub Skill。Windows、容器和手动二进制安装请按文末 gogcli 安装文档选择;不要在 Windows 终端直接照抄 brew 命令。以下授权步骤以你自己能操作浏览器的机器为例。

到 Google Cloud Console 创建或选择自己的项目,先只启用 Gmail API;配置 OAuth 同意屏幕,并创建类型为 Desktop app 的 OAuth 客户端,下载客户端 JSON。若项目仍处于 External + Testing,需把自己的 Google 账号加入测试用户。不要把 JSON、授权回调 URL、访问令牌或 keyring 密码发给 Agent,也不要放进聊天记录或公开仓库。

在可信的本机终端,将路径和邮箱换成自己的实际值,逐步执行:

命令
gog auth credentials set /absolute/path/to/client_secret.json
gog --readonly auth add you@gmail.com --services gmail
gog auth list --check
gog auth doctor --check

第二条命令会进入 Google 授权流程。这里同时限定了 gmail 服务,并让 gog 请求可用的只读 OAuth 权限;后续查询仍显式带 --readonly,作为运行时的第二道防线。检查最后两条命令的每个账号状态和诊断内容,不要只看进程退出码。已有可用账号时可跳过重复授权,直接进行下一步只读查询;若旧授权范围更宽,运行时加 --readonly 不会缩小已经发出的 OAuth 令牌权限。

第一次输入与结果检查

仍在同一运行环境中,用自己的邮箱代入:

命令
gog --readonly --account you@gmail.com gmail search 'is:unread newer_than:7d' --max 5 --json --wrap-untrusted

正常情况下,命令会返回结构化的搜索结果;可能找到邮件线程,也可能因为最近没有未读邮件而返回空结果。空结果不是授权失败的证据。若看到授权或 API 错误,先回到上一节检查账号、Gmail API 和 OAuth 状态。gog 的 gmail search 按线程查询;需要逐封邮件时再查官方的 gmail messages search,不要把线程数说成邮件封数。

终端这一步确认能读之后,可以在 OpenClaw 对话中这样提出任务;这是可改写的示例请求,不是本站运行记录:

提示词
请使用 gog Skill,只读查询我账号 you@gmail.com 最近 7 天的未读 Gmail,
最多列出 5 个邮件线程的发件人、主题和日期。请使用 --readonly,
不要发送、删除、归档或修改邮件,也不要输出邮件正文。
如果查询为空,请说清是空结果;如果失败,请告诉我具体报错和需要检查的步骤。

如果终端能查到,Agent 却说不可用,再用 openclaw skills check 核对 gog 是否对当前 Agent 可见、命令是否在该进程的 PATH,以及账号令牌是否可由 Agent 进程读取。不要用“终端成功”替代“Agent 成功”。

最常见的三个卡点

  • Google 报 API 未启用。 确认启用的是下载该 OAuth 客户端 JSON 的同一个 Cloud 项目里的 Gmail API;只添加 --services gmail 不会自动启用 Cloud API。
  • 大约一周后出现 invalid_grant。 Google 说明 External + Testing 的用户数据授权通常七天到期。到 Cloud Console 的 Audience 检查发布状态及适用要求;若更改状态,需要按 gogcli 文档重新完成同范围授权。不要把所有 invalid_grant 都归因于这一种原因。
  • 本机命令可用,OpenClaw Agent 报 keyring.password。 一位用户曾在 Ubuntu 24.04 无头部署、OpenClaw 2026.5.7/gog 0.15 中遇到这种差异。先按 gogcli 安装文档检查实际 Gateway/Agent 进程的 keyring 后端、HOME 和密码环境,勿因为 Agent 读不到令牌就贸然删除已存授权。远程无浏览器时,可参考当前 OpenClaw Skill 的 --manual 或 SSH 端口转发流程;回调 URL 只能在可信终端交给 gog,不能贴进 Agent 对话。

这份首次流程故意只覆盖 Gmail 读取。Calendar、Drive、Sheets 等都要分别启用对应 Google API 并获得相应服务授权;发送邮件和修改数据更应按实际任务另行决定权限。

你的首次任务进行得怎么样?

选择项通过网站统计帮助我们了解常见卡点。屏蔽统计可能导致无法送达;具体问题请通过邮件反馈。

参考来源

  1. Gog — ClawHubPeter Steinberger
  2. OpenClaw bundled gog SKILL.mdOpenClaw
  3. OpenClaw Skills CLIOpenClaw
  4. gogcli QuickstartOpenClaw gogcli maintainers
  5. gog auth credentials set commandOpenClaw gogcli maintainers
  6. gog auth add commandOpenClaw gogcli maintainers
  7. gogcli AutomationOpenClaw gogcli maintainers
  8. gogcli InstallOpenClaw gogcli maintainers
  9. Manage App AudienceGoogle Cloud
  10. openclaw gog auth is a PIA — issue #566chsbusch-dot
发现过期或有误的信息?告诉我们

继续发现

其他值得了解的技能。