Daily team task refresh with shared working memory

Every weekday morning, refresh a shared working memory page in Notion from your team's Linear issues, then post a focused status update in Slack.

Agentic Task
LinearNotionSlack BotOperationsProductDaily DigestsNotifications & Alerts

Build an agent workflow that runs every weekday at 9am in my local time zone and keeps a single shared working memory page up to date for my team, then posts a focused status update in Slack so nothing gets dropped between standups.

Tools the agent should use:

1) Linear, as the source of truth for active work. The agent should list open issues for a specific Linear team I configure, including each issue's title, assignee, current state, priority, due date, last updated time, and most recent comment.

2) Notion, as the home of the shared working memory. I will give the agent one Notion page to own. On the first run, the agent should initialize that page with a clear structure: a short Team Context section (mission, current focus, owners) that humans edit by hand, then auto-managed sections for Top Priorities, In Progress, Blocked, Recently Shipped, and Stale (no movement in 7+ days). On every later run, the agent should refresh only the auto-managed sections by replacing their content, and must not touch the Team Context section.

3) Slack (via the Slack Bot), as the daily summary channel. After the Notion page is refreshed, post one message to a channel I configure with: today's date, a one-line headline ('3 priorities, 2 blocked, 4 shipped yesterday'), a short bulleted list of the top priorities with assignees, a callout for blocked or stale work that needs a decision, and a permalink to the Notion working memory page.

How the agent should think on each run:

- Read the existing Team Context section from the Notion page so it understands current focus and owners.

- Pull all non-completed, non-cancelled Linear issues for the configured team.

- Decide Top Priorities using priority field plus due dates plus what the Team Context section says the team is focused on. Keep it to at most 5.

- Flag anything in a Blocked state, or anything whose last update was more than 7 days ago, as Stale and call it out by name.

- Recently Shipped should list issues that moved to a completed state in the last 24 hours.

- Write the refreshed sections back to Notion, then post the Slack summary.

Inputs I should be able to configure at setup: the Linear team to watch, the Notion page id that holds the working memory, the Slack channel for the daily summary, the time of day, and the stale threshold in days. Default the stale threshold to 7 days and the time to 9am.

Keep the Slack message short and skimmable. The Notion page is the long form. The Slack post should always end with a link to the Notion page so anyone can click through for full context.

Additional information

What does this prompt do?
  • Pulls your team's active work from Linear every weekday morning and decides what actually matters today.
  • Keeps one shared working memory page in Notion fresh: top priorities, in progress, blocked, recently shipped, and anything that has gone stale.
  • Posts a short, skimmable status update in Slack with the headline, the top priorities, and a link back to the full working memory page.
  • Calls out blocked or stale work by name so handoffs stay clean and nothing falls through the cracks.
What do I need to use this?
  • A Linear workspace and the name of the team you want the agent to watch.
  • A Notion workspace, plus one page you give the agent permission to edit. This page becomes your shared working memory.
  • A Slack workspace and one channel where the daily summary should be posted.
  • About 5 minutes to point the agent at the right team, page, and channel.
How can I customize it?
  • Change when it runs. The default is every weekday at 9am, but you can move it to whatever time matches your team's standup.
  • Tune what counts as stale. Default is 7 days without movement. Tighten it for fast-moving teams or loosen it for longer cycles.
  • Pick a different Slack channel, or post to multiple channels if more than one group needs the same view.
  • Edit the Team Context section of the Notion page by hand whenever your focus shifts. The agent will read it but never overwrite it.

Frequently asked questions

Will this overwrite notes my team writes on the Notion page?
No. The agent only refreshes the sections it owns (Top Priorities, In Progress, Blocked, Recently Shipped, Stale). The Team Context section at the top is yours to edit, and the agent reads it for context but never changes it.
Do I have to use Linear?
This starter is built around Linear, but the same pattern works for Asana, ClickUp, Jira, and other trackers we support. When you set it up, you can ask the agent to swap Linear for the tracker your team actually uses.
Can the daily summary post to more than one Slack channel?
Yes. By default it goes to one channel, but you can add additional channels at setup so each subteam gets the same view in their own space.
What happens on the first run?
The agent treats the first run as initialization. It creates the working memory structure on the Notion page you gave it, fills in the auto-managed sections from your current Linear state, and posts the first summary in Slack so the team can see the format right away.
Does the agent edit my Linear issues?
No. This workflow only reads from Linear. It does not change issue state, priority, or assignees. All writes happen in Notion and Slack.

Stop losing context between standups.

Connect Linear, Notion, and Slack once, and Geni keeps your team's working memory fresh every weekday morning.