GitHub integration
Connect a GitHub repository to an app so every bug report becomes an issue in the right repo.
Overview
Connecting GitHub links one of your apps to a single repository. From then on, every report submitted from that app automatically opens a GitHub issue with the description, screenshots, and the reporter's classification.
You can connect more than one tracker to the same app; each report fans out to every connected integration independently.
Before you start
- You've created an app in the BugScreen console.
- Sign in to a GitHub account with access to the repository. Native screenshot and video uploads require write access. We recommend a dedicated account owned by your team; see below.
Connect as a dedicated account
We recommend authorizing BugScreen with a dedicated GitHub account owned by your team, rather than with a personal one. It takes a few minutes and avoids two problems.
Issues are attributed to whoever authorized. GitHub records that account as the author of every issue BugScreen opens — so it's your name on each one.
The connection outlives staff changes. The token BugScreen holds belongs to that account, so removing it from the repository — when someone leaves — stops issue creation until you reconnect.
Setting one up
- Create a GitHub account on an address your team controls — for example
[email protected]. GitHub's terms permit a machine account for automation like this. - Set its display name to BugScreen, so filed issues are clearly attributed.
- Add it to the repository or organization with write access so it can upload screenshots and videos as well as create issues.
- Sign out of GitHub and back in as that account — or use a private window — then follow the connect steps below. The authorization screen reuses whichever GitHub session your browser already has, so it won't offer you an account picker.
On paid organizations this uses one seat.
Connect GitHub
- Open your app in the console and find Connected destinations.
- Open the Add integration menu and choose GitHub. You'll be redirected to GitHub to authorize BugScreen.
- Approve the authorization on GitHub. You'll be returned to the console.
- Enter the repository owner and name that issues should be filed into, then confirm.
What gets created
Each report opens a GitHub issue containing:
- A title derived from the report.
- A Markdown body with the description and any device or page metadata.
- Screenshots embedded inline under a
## Screenshotheading. - The reporter's classification rendered in the body.
Screenshots are uploaded to GitHub and embedded inline. GitHub keeps its own copy, so it remains independent of BugScreen’s download-link expiry and report retention. This applies to new reports; existing issues are unchanged.
Attachments in public repositories are public. Attachments in private or internal repositories require repository access and follow GitHub’s own access and retention policies.
Labels
BugScreen applies a consistent set of labels so you can filter and automate:
bugscreenandbugon every issue.type:bug,type:ui, ortype:crashfrom the reporter's type.severity:low,severity:medium, orseverity:highfrom the reporter's severity.
Test the connection
After connecting, use Test integrations to confirm everything works end to end. It fires a sample report at every integration connected to this app, not just this one. The test files a real sample issue and shows you whether it succeeded.
Change repo or disconnect
To file issues into a different repository, pick a different owner/repo from the integration — no need to reconnect. To stop filing issues entirely, disconnect the integration from the app's Connected destinations.
Troubleshooting
If a screenshot cannot be uploaded, the issue includes a notice and a link to the report in BugScreen Inbox when available. The Inbox requires BugScreen workspace access and is available only until the report expires. Check that the authorized GitHub account has repository write access. Testing the connection creates an issue without attachments; submit a report with a screenshot to verify image delivery.
If a test or real report fails to create an issue, check the following:
- The authorized account lost access — or was removed. A common cause is that the person who connected GitHub left and their account was removed from the repo, taking the token with it. Reconnect with an account that can write to it — ideally a dedicated one.
- The repository was renamed, archived, or deleted. Update the selected
owner/repoor point the integration at a live repo. - Connect is blocked with a plan-limit message. Your plan's integration limit has been reached — remove an unused integration or upgrade your plan.
Start shipping bug reports
Create an account to start shipping bug reports from your app.