Odin only ever requests read access. It will never push code, open pull requests, or modify anything in your repositories.
How to connect
1
Start the connection
On Home or Testing > PR Reviews, click Connect GitHub. The row lives in the Finish setting up card. The pentest setup wizard under Testing > Pentests > Launch a pentest offers the same button.
2
Authorise the app
You’ll be redirected to GitHub to authorise the Odin GitHub App.
3
Select your organisation
Choose the GitHub organisation or account that owns your repositories.
4
Grant repository access
Select the repositories you want to make available to Odin.
5
Confirm
You’ll be redirected back to Odin. Your connected account will appear with a green checkmark.
Selecting repositories
After connecting, you’ll see a list of repositories from your connected GitHub organisation. Select all repositories that belong to your organisation.Already connected?
If you’ve previously connected GitHub (e.g. for another run), Odin shows your existing connection with the option to:- Continue with the current connection
- Switch account to authenticate with a different GitHub account or organisation
Troubleshooting
I can't see my organisation's repositories
I can't see my organisation's repositories
GitHub App installations require explicit permission from a GitHub organisation owner. If you’re not an org owner, ask your GitHub admin to approve the Odin GitHub App installation at
github.com/organizations/YOUR_ORG/settings/installations.I only see some of my repositories
I only see some of my repositories
The GitHub App may have been installed with repository-scoped access rather than full org access. Go to your GitHub org settings > Installed GitHub Apps > the Odin app and update the repository access to All repositories (or add the specific ones you need).
The OAuth flow failed or timed out
The OAuth flow failed or timed out
Close the tab and try again from the pentest setup wizard. If the issue persists, contact us at [email protected].
Next: Scope & Connectivity
Continue — live URLs are optional