FixControl opent automatisch een Pull Request wanneer een agent een patch genereert (de Run-fix → PR-flow). Voor die schrijfactie heeft FixControl een GitHub-credential nodig. Je hebt twee opties — kies er één.

Twee opties
| GitHub App | Personal Access Token | |
|---|---|---|
| Aanbevolen voor | Productie, multi-tenant | Single-repo setups |
| Token-leven | 1 uur, automatisch geroteerd | Statisch tot je 'm intrekt |
| PR-attributie | <app-slug>[bot] | Jouw eigen account |
| Per-tenant scoping | Ja (per installatie) | Nee — één token, één repo |
| Webhook-events | Ja | Nee |
In productie hoort de App-route.
Optie 1: GitHub App (aanbevolen)
Stap 1 — Registreer de App
Ga naar github.com/settings/apps/new (of je organisatie-instellingen) en gebruik:
- Callback URL:
https://<jouw-host>/api/auth/github/callback - Request user authorization (OAuth) during installation: aan
- Enable Device Flow: aan
- Webhook URL:
https://<jouw-host>/api/github/webhook - Webhook secret: een willekeurige string van 32+ tekens — bewaar 'm
- Permissions (Repository):
- Contents — Read & write - Pull requests — Read & write - Workflows — Read & write - Metadata — Read
- Permissions (Account): Email addresses — Read
Download na het opslaan de private key (.pem).
Veiligheid: behandel de private key als een wachtwoord. Iemand met de PEM kan namens jouw App tokens verzilveren.
Stap 2 — Installeer per tenant
Een ingelogde admin gaat naar Settings → Integraties → GitHub verbinden. FixControl stuurt door naar GitHub's "Install on selected repositories"-pagina. Na bevestigen wordt de installatie aan de tenant gekoppeld en mint FixControl per PR een verse installatie-token (1u TTL).
Stap 3 — Webhook valideren
FixControl controleert elke delivery met X-Hub-Signature-256. Het secret in GitHub's App-settings moet identiek zijn aan het secret waarmee FixControl is geconfigureerd. Zonder match wordt elke delivery geweigerd — bewust: ongesigneerde webhooks worden nooit vertrouwd.
Optie 2: Personal Access Token
Gebruik dit voor een single-repo install.
Maak een fine-grained PAT met Contents: read & write en Pull requests: read & write op exact die ene repo. Een classic token werkt ook, maar geeft meer scope dan nodig.
PRs verschijnen onder jouw account. Er is geen webhook — events zoals pull_request.closed komen dus niet binnen.
Webhook setup
Alleen relevant voor de App-route:
- In de App-settings: Webhook URL =
https://<jouw-host>/api/github/webhook. - Webhook secret = exact dezelfde string waarmee FixControl is geconfigureerd.
- Subscribe op de events die je nodig hebt —
Pull requestis de minimale set voor de Run-fix-flow. - Test via de Recent Deliveries-tab in de App-settings. Een 401 hier betekent meestal dat het secret niet matcht.
FAQ
Kan ik beide tegelijk configureren? Ja. FixControl kiest per tenant: App-installatie eerst, dan een opgeslagen user-token, dan de PAT. Zo kun je een productie-App combineren met een single-user PAT-setup.
Welke repo's kan FixControl raken? Voor de App: alleen de repo's die je tijdens installatie selecteert. Voor de PAT: alleen de geconfigureerde default-repo.
Wat als de installatie verwijderd wordt? De volgende PR-call krijgt een 401. FixControl invalideert de gecachete token automatisch en geeft de fout door — je heractiveert door opnieuw te installeren in Settings → Integraties.
Worden private key en secrets gelogd? Nee. Audit-events bevatten de installation-ID en GitHub-username, nooit tokens of de PEM.