Auto-summarize every link shared in a Slack channel

When someone drops a link in a watched Slack channel, an agent reads the page, writes a short summary, and posts it back as a thread reply.

Agentic Task
Slack BotDiffbotOperationsPersonal ProductivityResearch & MonitoringContent GenerationNotifications & Alerts

Build me an agent workflow that auto-summarizes any link shared in a watched Slack channel and posts the summary as a thread reply on the original message.

Trigger: a Slack Events API webhook for link_shared / message events on the channels I configure. When the workflow fires, the event payload includes the channel, the message ts, and the URL (or URLs) that were shared. Treat each URL as one summarization job.

Before doing anything else, check the URL against a configurable ignore list (default examples: twitter.com, x.com, our internal docs domain, status pages). If the host matches the ignore list, skip silently.

Read the page with Diffbot. Use the Analyze URL (Auto-detect Page Type) operation so the same workflow handles articles, product pages, and discussion threads without me having to branch on page type. If Diffbot classifies the page as an article, fall back to Extract Article on the same URL to get cleaner title, author, source, date, and body fields.

Use the built-in LLM to write a short summary from the extracted content: 3 to 5 bullet points capturing the core argument or main facts, plus a small header line with the title, author (or site name if no author), source domain, and publish date when those are available. Keep it tight. No filler, no marketing voice.

Post the result back to Slack with the Slack Bot Send a Message operation. The message must go to the same channel as the original event, and it must be a thread reply (use the original message's ts as thread_ts) so the summary attaches to the link instead of creating a new top-level message. Format the summary as Slack mrkdwn: a bold header line followed by bulleted lines.

If Diffbot returns an error, a paywall, or no extractable text, skip posting (do not send a broken summary). If the same URL has already been summarized in this thread within the last 24 hours, skip to avoid duplicates.

Integrations: Diffbot (Analyze URL with Extract Article fallback) and Slack Bot (Send a Message as a thread reply). The built-in LLM handles the summarization step.

Additional information

What does this prompt do?
  • Watches a Slack channel for any link someone shares and reacts in seconds.
  • Reads the page behind the link and pulls out the title, author, source, and publish date.
  • Writes a tight 3 to 5 bullet summary so your team gets the gist without leaving Slack.
  • Posts the summary as a thread reply on the original message, keeping the channel tidy.
What do I need to use this?
  • A Slack workspace where you can add a bot and pick the channels it watches.
  • A Diffbot account so the agent can read the contents of articles, product pages, and discussions.
  • An optional list of domains to ignore (for example tweets, internal docs, or status pages).
How can I customize it?
  • Change the channel or channels the agent watches, or have it ignore links posted by certain people.
  • Adjust the summary style: shorter bullets, a single TLDR sentence, or a longer brief with quotes.
  • Edit the ignore list of domains so the agent skips links you do not want summarized.

Frequently asked questions

Will it work for product pages and forum discussions, not just news articles?
Yes. The agent uses Diffbot's auto-detect reader, so articles, product pages, and discussion threads all come back as clean structured text before the summary is written.
Can I stop it from summarizing certain links?
Yes. You can give the agent an ignore list of domains (tweets, internal wikis, status pages, anything you want it to skip) and it will leave those links alone.
Does the summary appear as a new message or as a reply?
It posts as a thread reply on the original message that contained the link, so your channel stays uncluttered and the summary lives right next to the source.
Which channels does the agent watch?
Whichever channels you add the bot to. You can start with one channel for testing and expand from there.
What if a page is paywalled or fails to load?
The agent will skip it and move on rather than post a broken summary, so you only see threads on links it could actually read.

Stop opening every link your team drops in Slack.

Connect Slack and Diffbot once, and Geni summarizes every shared link as a thread reply within seconds.