Daily async standup from Trello to Slack

Every weekday at 9am ET, turn your Trello board into a per-person async standup post in Slack: yesterday's moves, today's focus, and blockers.

Agentic Task
TrelloSlackOperationsProductDaily DigestsAI Reports

Every weekday at 9am ET, run an agent that builds an async standup post from one Trello board and posts it to one Slack channel. Use a cron trigger.

Inputs I will configure: the Trello board ID (or URL) to summarize, and the Slack channel ID (or name) to post into.

Steps the agent should take:

1. Call Trello Get a Board on the configured board, expanding cards (include cards, card list, card members, card labels, card due dates, and recent card actions / activity) so the agent has the lists, the cards on each list, who they are assigned to, their labels, due dates, and which list each card is currently in.

2. Call Trello Get Many Board Members on the same board to get the list of people on the board with their full names and usernames.

3. Group cards by assignee. For each person, build three sections: Yesterday (cards that changed list within the last business day, e.g. moved from In Progress to Done, or from To Do to In Progress), Today (cards currently sitting in the In Progress list assigned to them), and Blockers (cards assigned to them that are labeled "blocked" or "stuck", or whose due date is in the past). If a person has nothing in any of the three sections, skip them entirely so the post stays tight.

4. After the per-person sections, add a short "Watchlist" footer that lists any cards that are unassigned, plus any cards that are overdue regardless of assignee. Keep this section short and only include it if there is something to flag.

5. Tone: tight, factual, no fluff. One short line per card (card title + list or status). No long descriptions. Skip filler like "Looks like a productive day!".

6. Call Slack Send a Message to post the digest to the configured Slack channel. Format with Slack mrkdwn: use *bold* for each person's name as a section header, use <@USERID> @-mentions when you can match a Trello member to a Slack user (match by full name, then by email if available), and use <url|text> links to the Trello card for each line item so people can click straight into the card. Lead the message with a one-line header like "*Daily standup, <date>*".

Edge cases to handle: if the board has no card activity in the last business day, post a one-line "No movement on the board yesterday" message instead of an empty digest. If a Trello member cannot be matched to a Slack user, use their Trello full name in plain text instead of an @-mention. If the Trello API call fails or the board returns no cards, post a short failure note to the same Slack channel so the team knows the digest did not run, instead of silently skipping the day.

On Monday, treat "yesterday" as the previous Friday so weekend gaps do not erase Friday's progress.

Additional information

What does this prompt do?
  • Reads your Trello project board every weekday morning and pulls the cards and the people on it.
  • Groups activity by teammate and writes a short standup post: what each person moved yesterday, what they are working on today, and anything blocked or overdue.
  • Skips quiet days for people with no activity so the post stays tight, and flags unassigned or stuck cards at the bottom.
  • Posts the digest to a Slack channel you pick, formatted cleanly and @-mentioning each teammate.
What do I need to use this?
  • A Trello account with access to the project board you want summarized.
  • A Slack workspace and the channel where the standup should land.
  • The Trello board link or ID, and the Slack channel name.
How can I customize it?
  • Change the time or days. Run it at 8am, after lunch, or only Tuesday and Thursday.
  • Swap the board or post to a different Slack channel for each team.
  • Tune the format. Add an overall TLDR at the top, hide the blockers section, or expand the rules for what counts as a blocker (specific labels, age in a list, past due date).

Frequently asked questions

Does this replace a live standup meeting?
It can. Teams use it to either kill the daily meeting entirely or to make the meeting shorter by sending the status portion in writing first.
What if someone did not touch any cards yesterday?
By default they are skipped, so the post stays focused on people who actually had movement. You can flip that and always list everyone if you prefer.
How does it know what counts as a blocker?
Out of the box it looks for cards labeled blocked or stuck and cards that are past their due date. You can adjust the rules in the prompt.
Can I run it for more than one board?
Yes. Duplicate the workflow once per board and Slack channel, or expand the prompt to loop through several boards and post one combined digest.
Will it tag people in Slack?
Yes. It tries to match each Trello member to their Slack user and @-mentions them so the right person sees their section.

Stop writing standup updates by hand.

Connect Trello and Slack once, and Geni posts a per-person standup every weekday at 9am.