Repo Relay is a GitHub-to-Discord integration bot that turns repository activity into clean, threaded Discord notifications. It posts one rich embed per pull request, attaches a thread to it, and routes every follow-up update (pushes, CI status, reviews, merges) into that thread so a PR’s whole life sits in one place. Beyond PRs it also relays issues, releases, deployments, and security alerts to their own channels, and it persists PR-to-message mappings in SQLite so embeds keep updating across workflow runs. It ships as a composite GitHub Action: drop one step into a workflow, supply a Discord bot token and a channel ID, and the action handles Node setup, dependency install, and execution.
This wiki mirrors the source project. The source of truth is the repo-relay repository and its README.
Quick Links
- Getting Started — install the action, create the Discord bot, wire up secrets
- Configuration — action inputs, channels, environment variables, permissions
- Event and Notification Model — which GitHub events are relayed and how
- Architecture — message flow, state storage, review detection
- Runners and State Persistence — self-hosted vs GitHub-hosted, caching state
- Troubleshooting — common errors and fixes
- Developer Guide — project layout, building, and extending the bot
Key Facts
- What it is: a standalone GitHub-Discord notification bot, packaged as a composite GitHub Action (
blamechris/repo-relay@v1). - Stack: Node.js 20+, TypeScript (ES2022), discord.js 14.x, better-sqlite3.
- State: SQLite database at
~/.repo-relay/{repo-name}/state.dbtracks PR-to-message mappings and status. - Setup in one line:
npx blamechris/repo-relay initruns an interactive wizard that writes the workflow file for you. - License: MIT.
What gets relayed
| Event family | Destination channel | Behaviour |
|---|---|---|
| Pull requests + CI + reviews | PR channel | One embed with a thread; all updates threaded |
| Issues and issue comments | Issues channel (falls back to PR channel) | Embeds for opened/closed |
| Releases | Releases channel (falls back to PR channel) | Embed on publish |
| Deployments | Deployments channel (falls back to PR channel) | Deployment status updates |
| Security alerts | Security channel (falls back to PR channel) | Dependabot, secret scanning, code scanning alerts |
See the event model for the full list and the GitHub event names that drive each one.