name: google_chat-platform label: Google Chat kind: platform version: 1.0.0 description: > Google Chat gateway adapter for Hermes Agent. Connects through authenticated HTTP callbacks or an optional Cloud Pub/Sub pull subscription for inbound events, and uses the Google Chat REST API for outbound messages. Native file attachments are delivered via per-user OAuth (each user runs /setup-files once in their own DM). author: Ramón Fernández # ``requires_env`` entries are surfaced in ``hermes config`` UI via the # platform-plugin env var injector in ``hermes_cli/config.py``. Using the # rich-dict form lets us contribute description/url/prompt metadata so users # see helpful guidance instead of the auto-generated fallback text. requires_env: - name: GOOGLE_CHAT_SERVICE_ACCOUNT_JSON description: "Path to Service Account JSON key (or inline JSON). Leave empty to use Application Default Credentials on Cloud Run / GCE. Falls back to GOOGLE_APPLICATION_CREDENTIALS." prompt: "Path to SA JSON (or empty for ADC)" password: true optional_env: - name: GOOGLE_CHAT_HTTP_EVENTS_URL description: "Authenticated HTTP endpoint for Chat message events." prompt: "HTTP events callback URL" password: false - name: GOOGLE_CHAT_HTTP_EVENTS_AUDIENCE description: "Expected audience for Google-signed HTTP event bearer tokens. Defaults to GOOGLE_CHAT_HTTP_EVENTS_URL." prompt: "HTTP events token audience" password: false - name: GOOGLE_CHAT_HTTP_EVENTS_SERVICE_ACCOUNT_EMAIL description: "Expected Google service account email for HTTP event bearer tokens." prompt: "HTTP events service account email" password: false - name: GOOGLE_CHAT_PROJECT_ID description: "GCP project ID for optional Pub/Sub inbound mode. Falls back to GOOGLE_CLOUD_PROJECT." prompt: "GCP project ID" url: "https://console.cloud.google.com/" password: false - name: GOOGLE_CHAT_SUBSCRIPTION_NAME description: "Optional Pub/Sub subscription path for pull-mode inbound events." prompt: "Pub/Sub subscription name" password: false - name: GOOGLE_CHAT_ALLOWED_USERS description: "Comma-separated user emails allowed to interact with the bot." prompt: "Allowed user emails (comma-separated)" password: false - name: GOOGLE_CHAT_HOME_CHANNEL description: "Default space for cron / notification delivery (e.g. spaces/AAAA...)." prompt: "Home space ID (or empty)" password: false