GitHub App setup
Create and configure the GitHub App required for a self-hosted 143 deployment.
In a self-hosted deployment, the GitHub App is both the repository access mechanism and the webhook source. Configure it before importing repositories or routing issue, PR, and review events into 143.
Create the app
Required values
You will need:
- App ID.
- Client ID.
- Client secret.
- Webhook secret.
- Private key.
- Installation ID after install.
Webhooks
Webhook delivery must reach your public API origin. Use a stable HTTPS URL and verify that the webhook secret in GitHub matches the deployment secret.
Permissions and events
Configure these GitHub App permissions:
- Repository Contents: Read & Write.
- Repository Pull requests: Read & Write.
- Repository Workflows: Read & Write.
- Repository Issues: Read.
- Repository Checks: Read.
- Repository Deployments: Read.
- Repository Metadata: Read.
- Repository Administration: Read & Write for the optional 143 Code Reviewer trigger-team setup flow.
- Organization Members: Read & Write for org roster sync and the optional 143 Code Reviewer trigger-team setup flow.
If you do not use the productized Code Reviewer trigger-team setup, keep Organization Members at Read and omit Repository Administration. Normal review execution does not use those elevated permissions; the setup endpoint uses them only to create the GitHub team and grant it read access to selected repositories.
Subscribe the app to these webhook events:
- Installation.
- Installation repositories.
- Pull request.
- Pull request review.
- Pull request review comment.
- Deployment status.
- Organization.
The Organization Members permission and Organization webhook event power GitHub organization auto-join by allowing 143 to sync org member rosters and react when members are added, removed, or the GitHub organization is renamed. With Members write and Repository Administration write, workspace admins can also create or repair the selectable @org/143-code-reviewer team from the Code reviews configuration page.
Secrets
Do not commit the GitHub App private key, client secret, or webhook secret. Store them through the deployment's encrypted secret flow.