Overview

The GitHub integration monitors your organization’s repositories, branch protection rules, member access, and security configurations. LowerPlane uses read-only access and does not access source code contents.

Authentication

GitHub uses OAuth 2.0 for authentication. When you connect, you’ll be redirected to GitHub to authorize LowerPlane.

Required Permissions (OAuth Scopes)

ScopeWhat It GrantsWhy LowerPlane Needs It
repoRead repository metadata and branch protectionGitHub’s classic OAuth requires this scope to read branch protection settings on private repositories. LowerPlane does not read code contents.
read:orgRead organization membership and teamsList organization members for access reviews and offboarding checks
admin:orgRead organization settingsRequired to check if org-level MFA enforcement is enabled and to filter members by 2FA status
user:emailRead authenticated user’s emailIdentify the connecting user account
The repo scope appears broad, but GitHub’s classic OAuth does not offer a more granular “read metadata only” scope. LowerPlane only reads repository settings and branch protection rules — never file contents, commits, or diffs.

What LowerPlane Collects

Repository Metadata

Name, visibility, language, default branch, open PR count, contributor count

Branch Protection

Required reviews, status checks, admin enforcement, stale review dismissal

Organization Members

Member list with MFA/2FA status for access reviews

Security Alerts

Dependabot vulnerability alert status per repository

Security Tests

LowerPlane runs 9 automated tests against your GitHub organization:
TestSeverityApplies To
Code repo should be classifiedCriticalEach repository
Github org level MFA should be enforcedCriticalOrganization
Github user should have MFA enabledCriticalEach member
Dependabot vulnerability scan should be enabledMediumEach repository
Code changes should be reviewed by peers before mergingHighEach repository
Merging of code changes should require passing status-checksHighEach repository
Branch Protection rules should be enforcedHighEach repository
Stale pull request reviews should be dismissed on new commitsMediumEach repository
Github access should be removed for offboarded userCriticalEach member

Repository Classification

After connecting, all synced repositories appear in Operations > Repositories. Each repository must be classified:
  • Production — All security tests are enforced. Branch protection, peer review, and status checks must be configured.
  • Non-production — Automatically marked as compliant. No security checks required.

Connecting

1

Navigate to Integrations

Go to Settings > Integrations and find GitHub in the Developer Tools category.
2

Click Connect

Click the Connect button. You’ll be redirected to GitHub’s authorization page.
3

Authorize

Review the requested permissions and click Authorize. You must be an organization owner or admin.
4

Initial Sync

LowerPlane performs an initial sync of your repositories, members, and security settings. This typically takes 1-2 minutes.

Data Access

Data TypeAccess
Repository metadataRead
Branch protection rulesRead
Organization membersRead
Member MFA statusRead
Source code / file contentsNo access
Commit history / diffsNo access
Issues / discussionsNo access