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.
- Issue 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.
After setup, requesting that team through GitHub's reviewer picker starts a review. A repository owner, organization member, or collaborator can also mention @org/143-code-reviewer in a pull request conversation comment to start a fresh review and pass that comment to the review orchestrator as untrusted context. User-attributed comments can come directly from GitHub or through a third-party GitHub App acting on the user's behalf, such as Graphite. Comments from external users, bot identities, and 143's own GitHub App do not start reviews. This supports requests such as “review again” and lets the requester clarify the behavior that needs another look without overriding the configured review policy.
Secrets
Do not commit the GitHub App private key, client secret, or webhook secret. Store them through the deployment's encrypted secret flow.