FixControl/Documentation

Admin Guide

GitHub

Connect GitHub so FixControl can open a Pull Request once a patch from the Run-fix flow is approved.

Connecting GitHub lets FixControl open a Pull Request with an agent's patch after that patch has been approved (the Run fix → verify → approve → PR flow). FixControl never pushes to your default branch and never merges: the Pull Request is where your own review and CI take over.

Before you start

  • You are an admin of your FixControl organization.
  • You can install GitHub Apps on the GitHub account or organization that owns the repositories (or a GitHub owner can approve the install for you).
  • You know which repositories FixControl should be able to reach.

Connect GitHub

  1. Open Settings → Channels → Code & patch delivery → GitHub.
  2. Click Connect GitHub. You get three options.
  3. Pick one and follow the steps below.
Install on GitHubUse a device codePersonal Access Token
Recommended forAlmost everyoneHeadless setups, or when you can't sign in to FixControl in this browserWhen the other two are not possible
PR attributionThe FixControl botYour GitHub userYour GitHub user
Token lifetimeShort-lived, rotated automaticallyUntil you revoke it on GitHubUntil you revoke it
Repository accessOnly the repositories you selectWhatever your GitHub user can reachWhatever the token can reach
  1. Choose Install on GitHub and click Continue on GitHub.
  2. On GitHub, pick the account or organization and select the repositories FixControl may access.
  3. Confirm. You return to FixControl and the connection shows as connected.

FixControl's GitHub App is registered and maintained by FixControl. You don't create an app, a private key or a webhook secret yourself.

Option 2: Use a device code

  1. Choose Use a device code and click Get a device code.
  2. Open the GitHub link shown on screen, paste the User code and approve.
  3. The FixControl page picks up the approval automatically.

Option 3: Personal Access Token (advanced)

  1. On GitHub, create a classic token with the scopes repo, workflow and read:user.
  2. Choose Advanced: paste a Personal Access Token, paste it, optionally add your GitHub username, and click Save token.

Pull Requests then appear under the account that owns the token. If that person leaves or the token expires, delivery stops until someone connects again.

A connection alone does not tell FixControl where a project's code lives. Add the repository as a codebase of the project (see Codebases), so agents can read it and patches know where to go.

How delivery works

  • A Pull Request opens only after the patch is approved. By default, applying an approved patch is a separate, deliberate click.
  • Auto-delivery is a per-project choice, off by default. In the project, open Connections, edit the GitHub connection, open More options and switch on Auto-deliver code — open a PR on this repo after the patch is approved. This requires the repository to be linked as a GitHub codebase.
  • FixControl never merges. It opens the Pull Request on a new branch; merging is your team's decision.
  • Merged or closed state comes back to FixControl through GitHub's Pull Request events, which FixControl's GitHub App receives. If that state looks stale, open the patch and click Check: FixControl asks GitHub what the Pull Request's state really is.

When something goes wrong

What you seeWhat to do
The connection shows Reconnect requiredThe installation was removed or a token was revoked. Connect again from Settings → Channels → Code & patch delivery → GitHub.
A patch fails to open a Pull Request for one repositoryThat repository is probably not selected in the GitHub App installation. Add it on GitHub under the app's repository access, then retry.
A Pull Request was merged but FixControl still shows it openClick Check on the patch.

FAQ

Can I use more than one option at once? Yes. FixControl uses the App installation first, then a device-code connection, then a Personal Access Token. Some actions, such as answering a GitHub environment review for a deployment gate, need a credential tied to a person; a bot installation cannot act as a reviewer.

Which repositories can FixControl touch? With the App: only the repositories you selected during installation. With a device code or token: whatever that GitHub user or token can reach. FixControl only writes to repositories linked as a codebase.

Can I rotate the webhook secret? No. The webhook secret belongs to FixControl's GitHub App and is managed by FixControl. There is nothing for you to rotate.

Are tokens logged? No. Credentials are stored encrypted. Audit events record the installation and the GitHub username, never tokens.

Related: Git providers (GitLab, Bitbucket) · Codebases · Delivery

Anything unclear or wrong?Let us know →

FixControl is a trade name of FixControl B.V.