Daily news monitor for your topics in Slack and Sheets

Every morning at 8am, get fresh articles on the topics you care about, deduped against your history, posted to Slack and logged in Google Sheets.

Deterministic Code
ExaGoogle SheetsSlackMarketingOperationsResearch & MonitoringDaily DigestsAI Reports

Every morning at 8am, run a topic-watch sweep that turns up fresh articles on a configured list of topics, logs them to a Google Sheet, and posts a digest to Slack. The trigger is a cron schedule.

Inputs the workflow needs (collect as workflow variables): a list of topic strings (e.g. "OpenAI enterprise launches", "agentic search startups", "AI coding tools funding"), a Google Sheets spreadsheet ID and sheet name for the article log, and a Slack channel ID for the digest.

Step 1. For each topic string, call Exa Search restricted to results from the last 24 hours, with numResults around 10, and request highlights and a short summary in the contents block. Collect results across topics into a single merged list, keeping the topic that produced each result.

Step 2. Use Google Sheets Get Values on the URL column of the log sheet to read every URL we have already logged. Drop any merged result whose URL already appears in that list so we only keep net-new articles.

Step 3. Run an AI summarize step over the remaining articles that produces a one-line takeaway per article from its title, summary, and highlights.

Step 4. Use Google Sheets Append Values to log one row per new article with: date, topic, title, URL, source domain, and the one-line takeaway.

Step 5. Use Slack Send a Message to post a single digest to the configured channel. Group items by topic, render each topic as a bold header, and list up to the top 5 fresh items per topic as bullet links with their takeaways. Keep the digest under 1500 characters total and skip any topic that has zero new items so we never post empty sections. Do not use em dashes anywhere in the message.

Services to use: Exa for the search, Google Sheets for the dedup read and append log, Slack for the digest message. Workflow type is code with discrete deterministic nodes (search, sheet read, dedup, AI summarize, sheet append, slack post). No branching agent reasoning required.

Additional information

What does this prompt do?
  • Pulls fresh articles from the last 24 hours for every topic on your watch list, with a one-line takeaway per article.
  • Drops anything already in your spreadsheet so you only ever see net-new coverage each morning.
  • Posts one tidy Slack digest grouped by topic, capped at the top 5 items per topic and under 1,500 characters.
  • Keeps a running log in Google Sheets with date, topic, title, link, source, and takeaway for searchable history.
What do I need to use this?
  • A list of topics you want to track, like competitor names, product categories, or market trends.
  • An Exa account for the web search.
  • A Google Sheet with a header row for date, topic, title, URL, source, and takeaway.
  • A Slack workspace and the channel you want the digest posted to.
How can I customize it?
  • Change the run time, switch to weekdays only, or run twice a day for higher-velocity topics.
  • Edit your topic list, adjust how many articles per topic land in Slack, or tighten the freshness window.
  • Point the digest at a different Slack channel, a private channel, or a direct message to yourself.

Frequently asked questions

Will it post the same article twice?
No. Every link is checked against your Google Sheet log before posting, so you only see articles you have never seen before.
What if a topic has no fresh news on a given day?
That topic is skipped in the Slack digest, so you never get an empty section. If every topic is quiet, you just do not get a digest that morning.
How many topics can I track?
As many as you want. The digest is capped at 1,500 characters and 5 items per topic, so longer lists just mean more headers and tighter per-topic summaries.
How fresh are the articles?
Each run pulls articles indexed in the last 24 hours, so your morning digest is genuinely the news that broke overnight.
Can I send the digest somewhere other than Slack?
Yes. The last step is a single message post, so you can swap it for Microsoft Teams, an email, or a Notion page without touching the rest of the flow.

Stop refreshing news tabs every morning.

Connect Exa, Google Sheets, and Slack once, and Geni delivers your topic watch in Slack every morning at 8am.