Astro
daily-customer-briefs

daily-customer-briefs

google-calendarzendeskhubspotslackopenaicron
Details
Visibility
public
Deploys
0
Build Number
0a07cf15
Updated
Jun 23, 2026
Contributors
Repository
Integrations
OpenAIGoogle CalendarZendeskHubSpotSlack (via built-in adapter)
Capabilities
Fetch today's Google Calendar events
Look up open Zendesk tickets per meeting attendee
Look up active HubSpot deals per meeting attendee
Post a formatted pre-meeting customer brief to Slack on a cron schedule
More blueprints
AGENT.md

Customer Meetings Agent

Runs every weekday morning and posts a pre-meeting brief to Slack. For each calendar event with external attendees, the agent looks up open Zendesk tickets and active HubSpot deals for those customers and formats a concise per-meeting summary.

Triggers

  • Cron job (default 0 8 * * 1-5): Automatically generates and posts the brief each weekday at 8 AM. Override with the CRON_SCHEDULE env var.
  • Chat message: Request a brief on demand via the web or Slack adapter.

Tools

ToolDescription
get_calendar_eventsFetches events from Google Calendar for a given date (defaults to today)
get_zendesk_ticketsSearches Zendesk for open tickets matching a customer name or email
get_hubspot_dealsSearches HubSpot for active deals matching a company name

Environment variables

VariableDescription
OPENAI_API_KEYAuto-injected by Astropods
GOOGLE_CLIENT_IDGoogle OAuth client ID
GOOGLE_CLIENT_SECRETGoogle OAuth client secret
GOOGLE_REFRESH_TOKENGoogle OAuth refresh token for Calendar access
GOOGLE_CALENDAR_IDCalendar ID to read events from (primary or a calendar email address)
ZENDESK_URLZendesk instance URL (e.g. https://yourcompany.zendesk.com)
ZENDESK_EMAILZendesk agent email address (treated as a secret)
ZENDESK_API_KEYZendesk API token
HUBSPOT_API_KEYHubSpot private app access token
SLACK_CHANNELSlack channel ID for the daily brief (optional)
CRON_SCHEDULECron expression (default: 0 8 * * 1-5)