Daily Slack nudge for stalled Close deals
Every weekday at 8am, find Close opportunities that have gone quiet, draft a re-engagement message per deal, and post one prioritized Slack thread per rep.
Every weekday at 8am in my local timezone, sweep my Close pipeline for stalled deals and post a prioritized re-engagement digest to Slack, grouped by rep.
Build this as an agent workflow on a cron trigger.
What the agent should do on each run:
1. Use Close's List Opportunities to pull every opportunity in an active status (anything that is not a won or lost status). Paginate until you have them all. Treat the configured pipelines as a filter if I provide one, otherwise include every active pipeline.
2. For each opportunity, use Close's List All Activities to look at the most recent activity on its lead within the last 7 days. Count calls, emails, SMS, notes, and meetings. If anything touched the lead in that window, consider the deal fresh and skip it. To avoid double-nudging, also skip deals whose last activity was an outbound email sent in the last 48 hours.
3. The remaining opportunities are 'stalled'. For each stalled deal, capture: deal name, opportunity value, current pipeline status/stage, assigned rep (user_id), days since last touch, and a short snippet of the last meaningful activity (last email subject, last note, last call outcome) for context.
4. Group the stalled deals by assigned rep. Within each rep's list, rank deals by value multiplied by days_since_last_touch so the biggest at-risk opportunities are on top.
5. For each stalled deal, draft a short, specific re-engagement message the rep can copy, edit lightly, and send. Tailor the tone and suggested next step to the deal's current stage (early discovery vs. proposal sent vs. waiting on procurement, etc.) and the last known context. Keep each draft to a few sentences and end with one clear next step.
6. Post one Slack message per rep to a configurable Slack channel using Slack Bot's Send a Message. Each message should be a single post (so reps' lists stay grouped) that starts with the rep's name and a one-line summary ('You have N stalled deals today, $X total at risk'), then lists each deal as its own block with: deal name, value, days since last touch, current stage, the drafted re-engagement copy, and the suggested next step. Skip reps with zero stalled deals so the channel stays signal-heavy.
Configurable inputs I should be able to set when I install this:
- Stale threshold in days (default 7).
- Slack channel to post into (default #sales-pipeline).
- Optional pipeline filter (default: all active pipelines).
- Time of day and which weekdays to run (default Mon-Fri at 8am).
The point of this workflow is to give every rep a ranked 'deals that need you today' list with starter copy, not just an alert that something is stale. Optimize for the rep being able to act in under 5 minutes.
Additional information
What does this prompt do?
- Sweeps your Close pipeline every weekday morning for active deals that nobody has touched in the last 7 days.
- Groups the stalled deals by the rep who owns them and ranks each rep's list by deal value and days since last contact.
- Drafts a short, ready-to-send re-engagement message for every deal, tailored to its stage and last known context.
- Posts one Slack thread per rep in a channel of your choice so every seller starts the day with a prioritized 'deals that need you today' list.
What do I need to use this?
- A Close account with API access (any paid plan).
- A Slack workspace where you can install the General Input bot and a channel to post the daily nudge in.
- An active Close pipeline with deals assigned to reps so the workflow has something to group by.
How can I customize it?
- Change the cadence or time of day. Default is every weekday at 8am, but you can run it every morning, only on Mondays, or hourly.
- Adjust the stale threshold. Default is 7 days of silence, but classic playbooks use 14, 30, or 45 days for longer sales cycles.
- Switch the Slack destination. Post in a shared #sales-pipeline channel, DM each rep their own list, or fan out to separate channels per team.
- Tune what counts as 'a touch'. By default any call, email, SMS, note, or meeting resets the clock, but you can ignore inbound replies or auto-emails.
Frequently asked questions
Will this nudge reps about deals they already followed up on yesterday?
Can I run this against only one pipeline or stage instead of my whole org?
Does it actually send the re-engagement emails for me?
How are deals prioritized inside each rep's Slack message?
What if a rep has no stalled deals on a given day?
Stop letting deals go quiet in Close.
Connect Close and Slack once, and Geni delivers a prioritized re-engagement list to every rep before their first coffee.