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
PromptCreate

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.

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.

FAQs

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.

Related templates

Call overdue Xero customers with an AI collections agent

Every weekday at 10am, an AI voice agent phones your most overdue Xero accounts, logs what each customer promised, and reports back to finance in Slack.

LiveKit
Xero
Deepgram
+2
Agentic Task
Win back LiveChat visitors whose chats went unanswered

Every couple of hours we find the chats your team never answered, email those visitors a real reply, and hand the sensitive ones to a support lead.

LiveChat
Gmail
Slack
Agentic Task
Turn Mailjet email clicks into ranked HubSpot follow-ups

Twice a day we spot the people clicking your pricing and demo pages, create a follow-up task for their owner, and post a ranked recap to Slack.

Mailjet
HubSpot
Slack Bot
Agentic Task
iMessage campaign console with pre-flight checks and delivery board

Build every text campaign in one screen: check who is actually reachable, see a realistic send plan, then watch delivery land row by row.

LoopMessage
Google Sheets
HubSpot
App
Chat quality review board for LiveChat support leads

Score last week's finished live chats against one rubric, let an AI grader draft the notes with quotes, and send coaching straight to the agent.

LiveChat
Slack
General Input Database
App
A searchable RFP answer library your bid team drafts from

Every proposal you have ever submitted in one searchable archive, with the closest past answers lined up against each question in a new RFP.

General Input Storage
General Input Database
Mistral AI
+2
App

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.