Attendee research briefing for today's external meetings

By General Input

Every weekday at 7:30am, get a Slack digest with a short briefing for each external meeting: who's attending, what their company does, recent news, and a suggested opener.

Integrations

  • Google Calendar
  • Real-Time Web Search
  • Slack

Type

Agentic Task

Categories

  • Sales
  • Personal Productivity

Every weekday at 7:30am in my local time zone, prep me for the day's external meetings by researching each outside attendee and the company they work at, then deliver one consolidated briefing to my Slack DM. Build this as an agent workflow.

Trigger: a cron schedule that fires Monday through Friday at 7:30am in my local time zone.

Step 1. Use Google Calendar's List Events on my primary calendar for today (timeMin = start of today in my time zone, timeMax = end of today, singleEvents = true, orderBy = startTime). Drop events I have declined, all day blocks, and events that have no other attendees. Treat the email address of the connected calendar account as my own domain (everything after the @), so I never have to configure an internal domain list.

Step 2. For each remaining event, classify attendees: anyone whose email domain matches mine is internal, anyone with a different domain is external. Also ignore common free mail domains (gmail.com, outlook.com, yahoo.com, hotmail.com, icloud.com, aol.com, proton.me, protonmail.com) when picking a company for the meeting, but still treat that person as an external attendee to research. Drop any meeting where no qualifying external attendee remains.

Step 3. For each remaining meeting, pick the most likely company by looking at the most common external corporate email domain across the attendees (e.g. jane@acme.com -> Acme). If multiple external domains tie, use the organizer's domain first. Reduce the bare second level domain to a company name hint.

Step 4. For each external attendee on each meeting, call Real-Time Web Search's Search operation with a query like "<First Last> <Company>" to confirm who they are and capture a role (title) and a one line on what the company does. Then call Real-Time Web Search's Search a second time per company, scoped to the past week using the tbs=qdr:w token, to pull 2 to 3 recent newsworthy items about that company (funding, leadership changes, product launches, partnerships, layoffs, earnings, lawsuits, regulatory action). Keep source URLs so you can cite them inline. If a person cannot be confidently identified, note that explicitly and move on instead of guessing.

Step 5. Synthesize one short briefing per qualifying meeting with these fields, in this order: (1) meeting title and start time in my local time zone, (2) who is attending from outside and their role at the company, (3) a one line on what the company does, (4) 2 to 3 recent newsworthy items from the past week with inline source links, (5) a suggested conversation opener that ties to one of those news items. Cap each meeting briefing to roughly 120 words so the digest stays scannable on mobile. Tone is factual and skimmable, no filler. If an external attendee could not be identified, include a clear skip note for that person inside the briefing rather than dropping the meeting.

Step 6. Combine every meeting briefing into a single Slack message, ordered chronologically by meeting start time. Format with Slack mrkdwn: *bold* the meeting title line, use <url|source> for inline citations, and put a thin separator between meetings. Send it with Slack's Send a Message to my own DM. To resolve the DM channel, first call Slack Open a Conversation with my own user id, then Send a Message to the channel it returns. Send exactly one message, not one per meeting. If there are no qualifying external meetings today, send a short note saying the day looks internal only.

Setup inputs to ask me for: the Slack destination (default: my own DM), the run time (default 7:30am weekdays in my local time zone), the news lookback (default 1 week via tbs=qdr:w), and the per meeting word cap (default 120). Do not require an internal domain list. Skip the run entirely if there are zero qualifying external meetings today.

Related prompts

Explore more prompts
Call overdue Xero customers with an AI collections agentWin back LiveChat visitors whose chats went unansweredChat quality review board for LiveChat support leadsFront desk appointment confirmation board for the next 3 daysWin back no-show and cancelled appointments every morningLive Loop returns analytics with product-level drill-downNewsletter pre-flight and approval board for Mailjet sendsTurn a prospect spreadsheet into personalized sequence enrollmentsMailjet email delivery lookup console for support teamsCatch feature flags that never got switched on in production