Weekly citation milestone watcher for research papers

By General Input

Get a Monday morning Slack roundup of which of your tracked papers gained citations, crossed round-number thresholds, or hit a milestone target.

Integrations

  • Crossref
  • Google Sheets
  • Slack

Type

Agentic Task

Categories

  • Operations

Build me an agent workflow that runs every Monday at 8am on a cron trigger and posts a weekly citation milestone roundup for the papers my research group tracks.

Inputs. I keep a Google Sheet that is the watchlist. Each row is one paper with these columns: DOI, paper nickname, last_known_citations, milestone_target. The agent should treat this Sheet as the source of truth for which papers to look up and what the previous citation count was.

Steps the agent should run, in order:

1) Read the watchlist from Google Sheets using the Get Values operation. Pull every row from the data range so the agent has the full DOI list, nicknames, last_known_citations, and milestone_target values.

2) For each DOI, call the Crossref Get Work by DOI operation. From the returned record, take is-referenced-by-count as the current citation count and note the most recent indexed date so the agent can mention freshness if a paper has not been re-indexed recently.

3) For each paper, compare the new citation count to last_known_citations and figure out: (a) which papers gained any citations this week, (b) which crossed a round-number threshold of 50, 100, 250, 500, or 1000, and (c) which hit or passed their configured milestone_target.

4) Write a short narrative summary in plain English, grouped into three buckets: "Milestone hit" for papers that crossed milestone_target or a round-number threshold this week, "Notable jump" for papers with a meaningful citation gain that did not cross a threshold, and "Steady" for papers with no change or a single citation added. Use the paper nickname (not the DOI) in the summary so it reads naturally. Keep the whole summary tight, no more than a few short paragraphs.

5) Post the summary to Slack using the Send a Message operation. The target channel should be configurable when I run the workflow.

6) After the Slack message succeeds, update the Sheet with the fresh citation counts using the Update Values operation. Overwrite the last_known_citations column so next Monday's comparison uses this week's numbers as the new baseline. Do not touch any other columns.

Edge cases to handle: if a DOI returns 404 or the record has no is-referenced-by-count, skip that paper and mention it in a short "could not check" footer in the Slack message; do not overwrite that row's count in the Sheet. If the Sheet is empty, post a one-line Slack message saying the watchlist is empty and exit. Be polite to Crossref by including a contact mailto in the request so we stay in the polite pool.

Use the agent workflow type so the grouping and milestone interpretation can use judgment rather than rigid rules.

Related prompts

Explore more prompts
Call overdue Xero customers with an AI collections agentLocal listing health board for every location you manageWin back LiveChat visitors whose chats went unansweredLet support send one-off Loops emails without an engineerStop cold emails to anyone with a live deal in PipedriveiMessage campaign console with pre-flight checks and delivery boardChat quality review board for LiveChat support leadsLinkedIn Ads budget pacing dashboard for every client accountFront desk appointment confirmation board for the next 3 daysGive your team Looker numbers without buying more seats