Setting up Discord to GitHub issue sync
Everything you need to connect a Discord forum channel to a GitHub repository.
DiscoHub links one Discord forum channel to one or more GitHub repositories. Once linked, new forum posts become GitHub issues, new issues become forum posts, and the two stay in sync. Setup takes a few minutes and needs the Manage Server permission on Discord plus admin access to the GitHub repository (or organization) you're connecting.
1. Add the bot to your server
Add DiscoHub to Discord and pick the server. Adding it means you agree to the Terms of Service and Privacy Policy. The bot asks only for the permissions it uses: view channels, send messages (including in threads), create and manage threads, manage messages, embed links, attach files, and read message history. It never needs Administrator.
2. Make sure you have a forum channel
DiscoHub maps a forum post to a GitHub issue, so it needs a forum
channel to work in — regular text channels aren't supported. If your server
doesn't have one yet: Server Settings → Channels → Create Channel,
pick Forum as the type, and name it something like
bug-reports.
You'll also need a GitHub repository to link it to, on an account or org where you can install a GitHub App.
3. Set up from the dashboard (recommended)
Sign in with Discord at the dashboard and press Set up on your server. The wizard walks you through each step, and you can come back any time: the same page doubles as the manage view.
- Install the GitHub App. The wizard sends you to GitHub to install DiscoHub on the account or organization that owns your repo. Choose Only select repositories if you like; you can add more later. GitHub then asks you to sign in to confirm the installation is yours; DiscoHub only links an installation your GitHub account can access. If you've already installed it for another server you own, the wizard offers to reuse that installation.
- Link a repo to a forum channel. Pick the forum channel, the repository, and the forum tag that marks posts belonging to that repo. One forum channel can host several repos, each with its own tag.
- Configure tag actions. Decide what happens on GitHub when a forum tag is added or removed: add or remove a label, close or reopen the issue, lock or unlock it. Labels sync back the other way too, using the same mapping.
- Backfill (paid tiers). Optionally import existing open issues as forum posts, or existing threads as issues, so history lines up on day one.
Or use slash commands
Everything above is also available in Discord. Every command except /help needs Manage Server.
/help: what DiscoHub does, this server's current setup status, and what to do next. Works the moment the bot joins, before anything is configured, and anyone can run it./link-repo: pick a forum channel, a repo, and a tag to link them. If the GitHub App isn't installed yet, the command hands you an install link and picks up where you left off./unlink-repo owner/repo: remove a link. Existing threads and issues are left as they are./config: set the tag actions for a channel (label, close/reopen, lock/unlock on tag add or remove)./sync: backfill issues or threads that predate the link (paid tiers)./sync-thread: run inside a forum post to create a GitHub issue from it on demand, even if the post has no repo tag./reset: erase everything DiscoHub stores about this server and start fresh. Server owner only, and it asks you to confirm. Your forum posts and GitHub issues are left alone.
What syncs, in which direction
- Posts and issues. A new forum post tagged for a linked repo becomes a GitHub issue with the same title and body. A new GitHub issue becomes a forum post carrying the repo's tag.
- Comments. Messages in the thread become issue comments; issue comments become thread messages. Edits and deletions on GitHub are mirrored.
- Open, close, lock. Closing or reopening an issue closes or reopens the thread, and vice versa through tag actions. Locking a thread locks the issue; locking the issue locks the thread.
- Labels and tags. A forum tag mapped to a label in your tag actions is mirrored both ways. GitHub labels with no mapped tag are left alone, and DiscoHub never creates forum tags for you.
- Attachments. Images posted in Discord are hosted by DiscoHub so they show up in the GitHub issue. Images in a GitHub issue body are embedded in the forum post; images in comments arrive as follow-up messages. For private repositories GitHub doesn't let apps fetch attachments, so those sync as a working link instead of an inline image.
Removing DiscoHub
Run /reset in your server, or use the danger zone at the bottom of your
dashboard's setup page. The server owner confirms it, and it can't be undone.
A reset erases every repo link, tag action, GitHub App connection, and the link between each forum post and its GitHub issue. It does not delete your forum posts or your GitHub issues — both sides are left exactly as they are, and your plan and other servers are untouched.
Two steps are then yours to do, because DiscoHub can't do either itself:
- Uninstall the GitHub App — GitHub → Settings → Applications → Installed GitHub Apps → DiscoHub → Uninstall. Until you do, it still has access to your repositories.
- Remove the bot from your Discord server — Server Settings → Integrations → DiscoHub → Remove, or kick it from the member list.
Planning to come back? Uninstall the GitHub App anyway. GitHub only runs
the setup handshake on a fresh install, so if you leave it installed,
/link-repo just opens its settings page and nothing links — however many
times you try. Uninstall first, then install again from the link /link-repo
gives you.
Removing the bot without running /reset doesn't erase anything straight away:
that starts a 30-day grace period, so an accidental kick doesn't destroy the links between
existing threads and issues. Re-invite within 30 days and everything resumes; after that
it's cleaned up automatically. Images you attached in Discord are hosted by DiscoHub and
embedded in the matching GitHub issues — paid plans keep those files, and on the Free
plan they're deleted 30 days after a reset, so those images stop loading.
Good to know
- DiscoHub skips its own echoes: an issue it created from a post never turns back into a second post, and comments it mirrored aren't mirrored again.
- Renaming a forum tag is always safe (everything keys on tag ids). Renaming a GitHub label means re-saving the affected tag action, since the label is stored by name.
- The Free tier links one repo per server with three tag actions per channel and no backfill. See pricing for the paid tiers.
- Questions? The FAQ covers the common ones, and the support Discord is open.