From gws
Watches Gmail inbox for new emails via GCP Pub/Sub and streams them as NDJSON using gws CLI. Supports label filters, polling, and file output for email processing workflows.
npx claudepluginhub wadewarren/gws-claude-pluginThis skill uses the workspace's default tool permissions.
> **PREREQUISITE:** Read `../gws-shared/SKILL.md` for auth, global flags, and security rules. If missing, run `gws generate-skills` to create it.
Watches Gmail inbox for new emails via GCP Pub/Sub and streams them as NDJSON using gws CLI. Supports label filters, polling, and file output for email processing workflows.
Send, read, triage, reply, forward, and watch Gmail emails via gws CLI. Access API resources like messages, threads, drafts, labels, and user profile.
Automates Gmail operations like searching, reading, sending emails, managing drafts/labels via Python CLI scripts with standalone OAuth. Requires Google Workspace.
Share bugs, ideas, or general feedback.
PREREQUISITE: Read
../gws-shared/SKILL.mdfor auth, global flags, and security rules. If missing, rungws generate-skillsto create it.
Watch for new emails and stream them as NDJSON
gws gmail +watch
| Flag | Required | Default | Description |
|---|---|---|---|
--project | — | — | GCP project ID for Pub/Sub resources |
--subscription | — | — | Existing Pub/Sub subscription name (skip setup) |
--topic | — | — | Existing Pub/Sub topic with Gmail push permission already granted |
--label-ids | — | — | Comma-separated Gmail label IDs to filter (e.g., INBOX,UNREAD) |
--max-messages | — | 10 | Max messages per pull batch |
--poll-interval | — | 5 | Seconds between pulls |
--msg-format | — | full | Gmail message format: full, metadata, minimal, raw |
--once | — | — | Pull once and exit |
--cleanup | — | — | Delete created Pub/Sub resources on exit |
--output-dir | — | — | Write each message to a separate JSON file in this directory |
gws gmail +watch --project my-gcp-project
gws gmail +watch --project my-project --label-ids INBOX --once
gws gmail +watch --subscription projects/p/subscriptions/my-sub
gws gmail +watch --project my-project --cleanup --output-dir ./emails