Appearance
openclaw webhooks gmail setup 命令完成 Gmail watch、Pub/Sub topic/subscription 和 OpenClaw webhook 投递的配置;webhooks gmail run 启动本地推送接收并自动续期 watch(默认12小时续一次)。run 命令的 account 可选,不支持 --project、--push-endpoint、--json,flag 默认回退 setup 写入的值。
openclaw webhooks
Webhook 工具与集成。当前内置 Gmail Pub/Sub 推送配置和运行时。
子命令:setup 和 run
bash
openclaw webhooks gmail setup --account <email> [...]
openclaw webhooks gmail run [--account <email>] [...]| 子命令 | 描述 |
|---|---|
gmail setup | 配置 Gmail watch、Pub/Sub topic/subscription 以及 OpenClaw webhook 投递目标。 |
gmail run | 运行 gog watch serve 外加 watch 自动续期循环。 |
webhooks gmail setup
配置 Gmail watch、Pub/Sub 和 OpenClaw webhook 投递。
bash
openclaw webhooks gmail setup --account you@example.com
openclaw webhooks gmail setup --account you@example.com --project my-gcp-project --json
openclaw webhooks gmail setup --account you@example.com --hook-url https://gateway.example.com/hooks/gmail必填
| 标志 | 描述 |
|---|---|
--account <email> | 要监视的 Gmail 账号。 |
Pub/Sub 选项
| 标志 | 默认值 | 描述 |
|---|---|---|
--project <id> | (无) | GCP 项目 ID(OAuth 客户端所属)。 |
--topic <name> | gog-gmail-watch | Pub/Sub topic 名称。 |
--subscription <name> | gog-gmail-watch-push | Pub/Sub subscription 名称。 |
--label <label> | INBOX | 要监视的 Gmail 标签。 |
--push-endpoint <url> | (无) | 显式 Pub/Sub push 端点。会覆盖 Tailscale 配置。 |
OpenClaw 投递选项
| 标志 | 默认值 | 描述 |
|---|---|---|
--hook-url <url> | (无) | OpenClaw webhook URL。 |
--hook-token <token> | (无) | OpenClaw webhook 令牌。 |
--push-token <token> | (无) | 转发给 gog watch serve 的 push 令牌。 |
gog watch serve 选项
| 标志 | 默认值 | 描述 |
|---|---|---|
--bind <host> | 127.0.0.1 | gog watch serve 绑定主机。 |
--port <port> | 8788 | gog watch serve 端口。 |
--path <path> | /gmail-pubsub | gog watch serve 路径。 |
--include-body | true | 包含邮件正文片段。用 --no-include-body 关闭。 |
--max-bytes <n> | 20000 | 每段邮件正文的最大字节数。 |
--renew-minutes <n> | 720(12小时) | 每隔 N 分钟续期 Gmail watch。 |
Tailscale 暴露
| 标志 | 默认值 | 描述 |
|---|---|---|
--tailscale <mode> | funnel | 通过 Tailscale 暴露 push 端点:funnel、serve 或 off。 |
--tailscale-path <path> | (无) | Tailscale serve/funnel 路径。 |
--tailscale-target <t> | (无) | Tailscale serve/funnel 目标(端口、host:port 或 URL)。 |
输出
| 标志 | 描述 |
|---|---|
--json | 以机器可读的 JSON 摘要输出,代替文本。 |
webhooks gmail run
前台运行 gog watch serve 外加 watch 自动续期循环。
bash
openclaw webhooks gmail run --account you@example.comrun 接受与 setup 相同的 gog watch serve、OpenClaw 投递、Pub/Sub 和 Tailscale 标志,但有几点不同:
--account在run中是可选的(会回退到已配置的账号)。run不接受--project、--push-endpoint或--json。run的标志没有内置默认值;缺失的值会回退到setup写入的值。
| 分类 | 标志 |
|---|---|
| Pub/Sub | --account、--topic、--subscription、--label |
| OpenClaw 投递 | --hook-url、--hook-token、--push-token |
| gog watch serve | --bind、--port、--path、--include-body、--max-bytes、--renew-minutes |
| Tailscale | --tailscale、--tailscale-path、--tailscale-target |
注意:在
run命令中,--topic的值必须是完整的 Pub/Sub topic 路径(projects/.../topics/...),而不是短 topic 名称。
端到端流程
完整的 GCP 项目、OAuth 和网关侧配置,请参见 Gmail Pub/Sub 集成。
相关文档
常见问题
run 命令中 --account 是必填的吗?
不是。webhooks gmail run 中 --account 是可选的;若不指定则回退到 setup 写入的已配置账号。
run 命令中 --topic 应该填短名称还是完整路径?
必须填完整 Pub/Sub topic 路径,格式为 projects/{project-id}/topics/{topic-name},而不是 setup 中使用的短名称。
如何配置 watch 自动续期间隔?
使用 --renew-minutes 标志,默认值为 720 分钟(12 小时)。可以改为更短的间隔,例如 --renew-minutes 60 表示每小时续期一次。该标志在 setup 和 run 中均可使用,但 setup 会将该值写入配置,run 仅覆盖运行时。