Daily GitHub PR Triage

ClaudeGitHubSlack

Fetch open GitHub pull requests each weekday morning, use AI to flag blocked and stale PRs, and post a formatted triage report to your Slack channel.

GitHubSlackPull RequestsEngineering Management

Daily GitHub PR Triage

This workflow helps your development team start each weekday with a clear snapshot of the current state of pull requests in your GitHub repository. Every weekday morning, it gathers open PRs, analyzes their status using AI, and sends a concise triage report directly to your Slack channel.

What It Does

  1. Triggers on schedule β€” Fires every weekday at 8:30 AM UTC.
  2. Fetches open PRs β€” Pulls the most recently updated open pull requests from your specified GitHub repository.
  3. Analyzes with AI β€” An AI agent acting as a Senior Engineering Manager identifies blocked, stale, and active PRs and writes a one-sentence summary for each.
  4. Posts to Slack β€” Delivers a formatted triage report to your team's Slack channel.

What You Need

  • A GitHub account with access to the repository you want to monitor.
  • A configured GitHub connector in Needle with appropriate permissions.
  • An AI model available in Needle.
  • A Slack workspace with a bot invited to the channel where you want the report posted.
  • The Slack channel ID for that channel.

How the Flow Works

StepNodeDescription
1Scheduled TriggerFires automatically at 8:30 AM UTC, Monday through Friday.
2GitHub: List Open PRsFetches up to 20 open pull requests sorted by most recently updated from your chosen repository. Change the owner and repo fields to point to your own project.
3AI Engineering ManagerSends the PR data to an AI model acting as a Senior Engineering Manager. It flags PRs as blocked (unresolved comments, failing checks), stale (no updates for 48+ hours), or active, and creates a one-sentence summary for each. The output is formatted in Slack markdown.
4Slack DeliveryPosts the triage report to the specified Slack channel with clear formatting and emoji status indicators.

Output

At the end of each run, you'll get a Slack message in your chosen channel that looks like this:

  • πŸ”΄ Blocked PRs β€” unresolved comments, failing checks, or conflicts.
  • 🟑 Stale PRs β€” no activity for more than 48 hours.
  • βœ… Active PRs β€” healthy and in progress.

Each PR entry includes its number, author, title in bold, and a short summary. This helps your team quickly identify what needs attention before the day begins.

Customization Tips

  • Change the repository β€” Update the owner and repo values in the GitHub node to monitor your own project.
  • Adjust the schedule β€” Change the trigger time and timezone to fit your team's standup schedule. Running the flow a bit earlier is helpful if your team meets before 9 AM local time.
  • Invite your Slack bot β€” Make sure the bot has been invited to the target channel (type /invite @YourBotName in the channel), or the message won't appear.
  • Edit the AI prompt β€” Change the tone, add extra checks, or adjust the criteria for what counts as blocked or stale.
  • Increase PR count β€” If your team has many open PRs, raise the perPage value in the GitHub node to capture more results.

Want to showcase your own workflows?

Become a Needle workflow partner and turn your expertise into recurring revenue.

Ready to vibe automate?

Join thousands of people who have transformed their workflows.

Workflows

Automations with AI agents

Collections

All your data, searchable

Chat Widget

Drop-in widget for your website

Developer API

Build AI-powered apps with ease

    We use cookies to enhance your experience on Needle and keep your data secure. Privacy Policy