Skip to content

prbot

A bot that watches for GitHub PR URLs in your messages and reacts with emoji reflecting the PR's current status. When a PR's status changes, the bot automatically updates the reaction.

How it works

sequenceDiagram
    participant User
    participant Chat as Messaging Platform
    participant prbot
    participant GitHub

    User->>Chat: Posts message with PR URL
    Chat->>prbot: Message event
    prbot->>GitHub: Fetch PR status
    GitHub-->>prbot: PR info + reviews
    prbot->>Chat: Add emoji reaction

    Note over GitHub,prbot: Later, PR status changes...

    GitHub->>prbot: Webhook event
    prbot->>Chat: Update emoji reaction
  1. A user posts a message containing a GitHub PR URL
  2. The bot detects the URL, fetches the PR status from GitHub, and adds an emoji reaction
  3. When the PR is updated (opened, closed, reviewed, etc.), a GitHub webhook notifies the bot
  4. The bot updates the emoji on all messages tracking that PR

Default emoji

PR Status Default Emoji
Approved :git-approved:
Changes requested :git-changes-requested:
Commented :speech_balloon:
Merged :git-merged:
Closed :headstone:

Open PRs with no reviews receive no emoji reaction.

All emoji are configurable per-instance and per-channel.

Next steps

  • Getting Started


    Install prbot and run it locally in under 5 minutes.

    Getting started

  • Slack Integration


    Create a Slack app and connect it to prbot.

    Slack setup

  • Discord Integration


    Create a Discord bot and connect it to prbot.

    Discord setup

  • GitHub Integration


    Create a GitHub App and configure webhooks.

    GitHub setup

  • Configuration


    Customise emoji, scopes, and all available settings.

    Configuration