Daily sales assistant briefing for your pipeline

Every weekday morning, get a Slack briefing covering today's meeting prep, stalled HubSpot deals, and the top accounts to work.

Agentic Task
HubSpotGoogle CalendarMicrosoft OutlookGmailSlackMicrosoft TeamsGoogle DriveNotionSalesPersonal ProductivityDaily DigestsMeeting WorkflowsAI Reports

Build me a sales assistant agent that runs every weekday at 7:30am in my local timezone and posts a single morning briefing to my Slack DM. This is a personal assistant for one sales rep (me), not a team-wide bot.

Each run, the agent should do the following:

1. Pull today's events from my Google Calendar (use List Events, primary calendar, time range = today in my timezone). Skip internal-only meetings (all attendees share my email domain) and skip blocks I marked as focus/OOO. Keep only meetings with external attendees.

2. For each remaining meeting, identify the prospect company and contacts. Use the external attendee email domain to find the matching HubSpot company (Search Companies on domain), then find associated open deals (Search Deals filtered to that company, deal stage not in Closed Won/Closed Lost) and the attendee contacts (Search Contacts by email). Pull deal name, stage, amount, close date, owner, last activity date, and the latest few notes on the deal.

3. For each meeting, produce a tight prep block: who's on the call, what stage the deal is in, what was discussed last (from the most recent HubSpot notes/activities), one or two strategic questions to ask, and a suggested opener. Keep each meeting block to a few short bullets, not a wall of text.

4. Build a Pipeline Hygiene section. Use Search Deals to find my open deals (hubspot_owner_id = me, deal stage not Closed Won/Closed Lost) where notes_last_updated or hs_lastmodifieddate is more than 14 days old, OR where the close date is within the next 30 days but the deal stage is still early. List up to 5, sorted by deal amount descending. For each, name the deal, the stage, the amount, days since last activity, and a one-line suggested next step.

5. Build a Top Accounts to Work Today section. From my open deals, surface up to 5 that are not on today's calendar but are worth a touch: deals approaching close date, deals that recently advanced stage, or deals where a key contact recently re-engaged (recent note or email). Rank by a simple priority signal and explain in one line why each is on the list.

6. Compose the full briefing as a single Slack message using mrkdwn formatting with clear section headers (Today's Meetings, Pipeline Hygiene, Top Accounts to Work). Use bold for deal names, include the HubSpot deal URL for each item so I can jump straight in, and keep the whole message scannable in under 30 seconds. Send it via Slack Send a Message to my DM channel.

If there are no external meetings, no stalled deals, and no overdue follow-ups, post a single short message: "All clear this morning. No external meetings, no stalled deals over 14 days." Do not pad the briefing.

Make these things easy to change in workflow settings: the cron time and timezone, the Slack channel or DM destination (allow swapping to a Microsoft Teams channel via Create Channel Message), the calendar source (allow Microsoft Outlook List Events instead of Google Calendar), the stalled-deal threshold in days, which HubSpot pipeline stages to include, and which sections to include or omit.

Tone: confident, direct, no fluff. Write the way a senior AE would brief themselves, not the way a tool would describe its features. No em dashes.

Do not modify any HubSpot records, do not send any emails, and do not create calendar events. Read-only across all systems except the single outbound Slack message.

Additional information

What does this prompt do?
  • Walks into your morning with a single briefing that names today's customer meetings, the deal context behind each one, and what to say first.
  • Surfaces stalled deals, missing next steps, and other pipeline hygiene gaps so you fix them before your manager asks.
  • Lists the top accounts to work today based on recent activity, owner, and stage, so you stop staring at your pipeline trying to pick.
  • Posts the whole thing as one tidy Slack message so it lives next to where you actually work, not buried in another tab.
What do I need to use this?
  • A HubSpot login with access to the deals, contacts, and companies you want covered.
  • A Google Calendar (or Microsoft Outlook calendar) connected so the assistant can see today's meetings.
  • A Slack workspace, or Microsoft Teams if your team lives there, for the briefing to land in.
  • Optionally, a Google Drive or Notion workspace so the assistant can link relevant collateral and notes.
How can I customize it?
  • Change the delivery time (default 7:30am local) or run it only on selected weekdays.
  • Swap the destination from a Slack DM to a Slack channel, a Microsoft Teams channel, or a Notion page.
  • Tune what counts as a stalled deal (default is no activity in 14 days) or which pipeline stages it covers.
  • Add or remove sections such as meeting prep, pipeline hygiene, top accounts, and overdue follow-ups.

Frequently asked questions

Do I need a paid HubSpot plan for this to work?
No. The assistant uses standard HubSpot deal, contact, and company data, which is available on every HubSpot plan including the free tier. You only need to be able to log in to HubSpot and see your own pipeline.
Can I get the briefing in Microsoft Teams instead of Slack?
Yes. The assistant can post to a Microsoft Teams channel or chat just as easily as Slack. When you set it up, point it at the Teams channel you want and it will format the digest there.
Will it spam my team if nothing important is happening?
No. If there are no meetings today, no stalled deals, and no overdue follow-ups, the assistant keeps quiet or posts a one-line all clear, depending on how you set it up.
Can I use Outlook Calendar instead of Google Calendar?
Yes. The assistant reads from whichever calendar you connect. Google Calendar and Microsoft Outlook both work for pulling today's meetings and attendees.
Does it edit my HubSpot records?
By default it only reads. If you want it to log the briefing as a note on the deal or create a follow-up task, you can turn that on, but it will not change deal stages or contact details on its own.

Stop cobbling together your morning pipeline review.

Connect HubSpot, your calendar, and Slack once, and Geni delivers your sales briefing every weekday before your first call.