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.
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?
What if a topic has no fresh news on a given day?
How many topics can I track?
How fresh are the articles?
Can I send the digest somewhere other than Slack?
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.