Team Standup Automator
Collect async standups from your team via Slack and post a formatted summary
🧂 Ingredients
🔌 APIs
collect_standup_responses_via_dm_and_post_summaries_to_team_channel
🔄 Alternatives:
pull_task_completion_data_to_pre_fill_yesterday_updates
🔄 Alternatives:
📋 Step-by-Step Build Guide
Configure team members and the standup schedule (e.g., weekdays at 9am)
1. Configure team members and the standup schedule (e.g., weekdays at 9am)
Configure the scheduled job to run at the specified time. Define the cron schedule: minute hour day-of-month month day-of-week Common patterns: - Daily at 7:30am: "30 7 * * *" - Weekdays at 9am: "0 9 * * 1-5" - Every 5 minutes: "*/5 * * * *" - First of month at 8am: "0 8 1 * *" The job should: 1. Log start time 2. Execute the pipeline steps in sequence 3. Handle failures gracefully — retry transient errors, skip and alert on persistent ones 4. Log completion time and status 5. Send output through the configured delivery channel
At 9am, DM each team member asking for their standup
2. At 9am, DM each team member asking for their standup: Yesterday, Today, Blockers
At 9am, DM each team member asking for their standup: Yesterday, Today, Blockers Steps: 1. Validate all required inputs are available 2. Execute the operation described above 3. Verify the result meets expected output format 4. Handle errors gracefully — retry transient failures, log and alert on persistent ones 5. Return structured output with status and any relevant data If any required data is missing, request it from the user before proceeding.
Collect responses over a 1
3. Collect responses over a 1-hour window (9am-10am)
Collect responses over a 1-hour window (9am-10am) Steps: 1. Validate all required inputs are available 2. Execute the operation described above 3. Verify the result meets expected output format 4. Handle errors gracefully — retry transient failures, log and alert on persistent ones 5. Return structured output with status and any relevant data If any required data is missing, request it from the user before proceeding.
At 10am, compile all responses into a formatted standup summary
4. At 10am, compile all responses into a formatted standup summary
Compile the gathered data into a structured report. Format as clean Markdown with: - Title/date header - Executive summary (2-3 sentences) - Key metrics section with actual numbers - Detailed sections with bullet points - Action items or recommendations at the end Keep it scannable — busy people read reports in 30 seconds. Use emoji sparingly for visual anchors (📊 metrics, ✅ wins, ⚠️ concerns, 📋 action items). Include data comparisons: "X this period vs Y last period (↑Z%)" If any data source was unavailable, note it clearly: "⚠️ [Source] data unavailable — excluded from this report."
Post the summary to #team
5. Post the summary to #team-standups channel with each person's update
Post the summary to #team-standups channel with each person's update Steps: 1. Validate all required inputs are available 2. Execute the operation described above 3. Verify the result meets expected output format 4. Handle errors gracefully — retry transient failures, log and alert on persistent ones 5. Return structured output with status and any relevant data If any required data is missing, request it from the user before proceeding.
Flag any blockers and tag the relevant manager or team lead
6. Flag any blockers and tag the relevant manager or team lead
Flag any blockers and tag the relevant manager or team lead Steps: 1. Validate all required inputs are available 2. Execute the operation described above 3. Verify the result meets expected output format 4. Handle errors gracefully — retry transient failures, log and alert on persistent ones 5. Return structured output with status and any relevant data If any required data is missing, request it from the user before proceeding.
Track participation
7. Track participation: who submits on time, who's late, who misses standups
Track participation: who submits on time, who's late, who misses standups Steps: 1. Validate all required inputs are available 2. Execute the operation described above 3. Verify the result meets expected output format 4. Handle errors gracefully — retry transient failures, log and alert on persistent ones 5. Return structured output with status and any relevant data If any required data is missing, request it from the user before proceeding.
Send a reminder DM to anyone who hasn't responded by 9
8. Send a reminder DM to anyone who hasn't responded by 9:45am
Send a notification to the user via the configured messaging channel.
For Pushover:
POST https://api.pushover.net/1/messages.json
Body: { token: {APP_TOKEN}, user: {USER_KEY}, message: "{notification_text}", title: "{title}", priority: 0 }
For Twilio SMS:
POST https://api.twilio.com/2010-04-01/Accounts/{SID}/Messages
Body: To={phone}, From={twilio_number}, Body={message_text}
Keep the message concise — under 160 characters for SMS, under 500 for push.
Include the most actionable information first.
Log: timestamp, channel, recipient, message preview, delivery status.🤖 Example Agent Prompt
Configure the scheduled job to run at the specified time. Define the cron schedule: minute hour day-of-month month day-of-week Common patterns: - Daily at 7:30am: "30 7 * * *" - Weekdays at 9am: "0 9 * * 1-5" - Every 5 minutes: "*/5 * * * *" - First of month at 8am: "0 8 1 * *" The job should: 1. Log start time 2. Execute the pipeline steps in sequence 3. Handle failures gracefully — retry transient errors, skip and alert on persistent ones 4. Log completion time and status 5. Send output through the configured delivery channel
Copy this prompt into your agent to get started.