Competitor and account news watchlist for Slack and HubSpot
Every four hours, scan the news for tracked competitors and accounts, post keepers in Slack, and log them as notes on the matching HubSpot company.
Build me an agent workflow that watches the news for a configured list of competitors, target accounts, and topics, then fans out the keepers to Slack and HubSpot.
Trigger: cron, every 4 hours.
Configure these inputs directly in the prompt so I can edit them later:
- watchlist: a list of entries where each entry has a name (e.g. "Acme Corp", "AI agent platforms") and a kind ("competitor", "account", or "topic"). Account entries should also include a domain when known so the HubSpot lookup is more reliable.
- slack_channel: the channel where alerts should be posted (e.g. #competitive-intel).
- recency_window: the news recency window to search, defaulting to 6h so we have a small buffer over the 4h cadence and never miss a story published right after the previous run.
For each run:
1. For every watchlist entry, call Real-Time News Data's Search News with the entry name as the query and time_published set to the configured recency window so we do not re-surface old stories. Default country=us and language=en unless I say otherwise.
2. Judge each returned article. Keep it only if it is materially about the watched company or topic. Drop boilerplate listicles, roundup posts, SEO regurgitations, and tangential mentions where the watched name only appears in passing.
3. For every keeper, write a 2 to 3 sentence summary that captures the actual news, and pull the headline and source URL.
4. Dedupe across runs by remembering the article URLs already processed in a short rolling memory (the most recent ~500 URLs is plenty). Skip any article whose URL is in that memory before doing any further work on it.
5. For each surviving story, send a message in Slack via Send a Message to the configured channel. Format the message as: bolded headline on the first line, the 2 to 3 sentence summary, the source URL on its own line, and a small footer noting which watchlist entry it matched.
6. If the watchlist entry is a competitor or account (not a topic), use HubSpot Search Companies to find the matching company by name first, then by domain if the name does not match. If a company is found, call HubSpot Create Note to create a note containing the summary plus the article URL and associate the note with that company so account owners see it on the CRM record.
7. If no matching HubSpot company exists, just post to Slack and move on. Do not create new companies.
8. After processing, add the URLs of every story you posted (and every story you reviewed but skipped) to the rolling memory so the next run does not reconsider them.
Keep runs quiet when there is no fresh material news: do not post anything to Slack if no keepers survived filtering.
Use Real-Time News Data for the news source, Slack's Send a Message for the channel alerts, and HubSpot's Search Companies and Create Note for the CRM half.
Additional information
What does this prompt do?
- Watches your list of competitors, target accounts, and tracked topics for fresh news every four hours.
- Filters out boilerplate listicles and tangential mentions so only material stories survive.
- Posts a short summary, headline, and source link to your competitive-intel Slack channel.
- For stories about a tracked company, attaches the same summary as a note on the matching HubSpot company record so account owners see it in their CRM.
- Remembers stories it has already surfaced so the same article never fires twice across runs.
What do I need to use this?
- A Slack workspace and the channel where alerts should land.
- A HubSpot login with permission to read companies and create notes.
- A RapidAPI account subscribed to the Real-Time News Data API.
- A short list of competitors, target accounts, and topics you want to watch.
How can I customize it?
- Change how often it runs (hourly, every four hours, twice a day) and the news recency window will follow.
- Swap the destination Slack channel, or route different watchlist entries to different channels.
- Tighten or loosen the materiality judgment to control how much noise gets through.
- Add or remove competitors, accounts, and topics in the watchlist any time.
Frequently asked questions
Do all my target accounts need to live in HubSpot for this to work?
Will the same story show up twice?
Can I run this on a tighter schedule than every four hours?
What if I do not use HubSpot yet?
How does the agent decide which stories matter?
Never miss a competitor headline again.
Connect Slack, HubSpot, and Real-Time News Data once, and Geni watches the news around the clock and writes the highlights into your CRM.