
Streams Google Workspace events like new Chat messages or Drive file changes directly to your terminal as NDJSON, which is surprisingly useful for debugging webhooks or building real-time integrations. Sets up the entire Pub/Sub pipeline automatically, pulls events in configurable batches, and can optionally save each event as a separate JSON file for analysis. The cleanup flag is nice for experimentation since it tears down the Pub/Sub resources when you're done. Honestly, this fills a gap that Google's own tooling doesn't address well for developers who need to see what's actually happening in their Workspace in real-time.
$ npx -y skills add googleworkspace/cli --skill gws-events-subscribe --agent claude-codeInstalls into .claude/skills of the current project.
PREREQUISITE: Read
../gws-shared/SKILL.mdfor auth, global flags, and security rules. If missing, rungws generate-skillsto create it.
Subscribe to Workspace events and stream them as NDJSON
gws events +subscribe
| Flag | Required | Default | Description |
|---|---|---|---|
--target | — | — | Workspace resource URI (e.g., //chat.googleapis.com/spaces/SPACE_ID) |
--event-types | — | — | Comma-separated CloudEvents types to subscribe to |
--project | — | — | GCP project ID for Pub/Sub resources |
--subscription | — | — | Existing Pub/Sub subscription name (skip setup) |
--max-messages | — | 10 | Max messages per pull batch (default: 10) |
--poll-interval | — | 5 | Seconds between pulls (default: 5) |
--once | — | — | Pull once and exit |
--cleanup | — | — | Delete created Pub/Sub resources on exit |
--no-ack | — | — | Don't auto-acknowledge messages |
--output-dir | — | — | Write each event to a separate JSON file in this directory |
gws events +subscribe --target '//chat.googleapis.com/spaces/SPACE' --event-types 'google.workspace.chat.message.v1.created' --project my-project
gws events +subscribe --subscription projects/p/subscriptions/my-sub --once
gws events +subscribe ... --cleanup --output-dir ./events
[!CAUTION] This is a write command — confirm with the user before executing.
Sponsors