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
- A user posts a message containing a GitHub PR URL
- The bot detects the URL, fetches the PR status from GitHub, and adds an emoji reaction
- When the PR is updated (opened, closed, reviewed, etc.), a GitHub webhook notifies the bot
- 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.
-
Slack Integration
Create a Slack app and connect it to prbot.
-
Discord Integration
Create a Discord bot and connect it to prbot.
-
GitHub Integration
Create a GitHub App and configure webhooks.
-
Configuration
Customise emoji, scopes, and all available settings.