# GitHub Integration (/docs/projects/settings-github)



The GitHub connection lives inside
[Project settings → Apps](/docs/projects/settings-apps). The bare URL
`/project/{projectId}/project-settings/github` is a redirect to
`/project/{projectId}/project-settings/apps`.

The **GitHub Integration** section sits at the bottom of that Apps
page.

## What the section shows [#what-the-section-shows]

* A card with the currently connected repo (full name) and a Remove
  button, or
* An empty state with a **Connect Repository** button, plus an
  optional "Suggested from Onboarding" card offering to save the repo
  you picked during the wizard into the project record.

## Connect a repository [#connect-a-repository]

Opens a dialog that lists repos across your installations. You can
switch to a "Manage Connections" view to add/remove installations on
GitHub. Clicking a repo PATCHes the project row with
`github_installation_id`, `github_repository_id`,
`github_repository_full_name`, and `github_default_branch`.

## Disconnect [#disconnect]

Runs a confirmation dialog and then PATCHes those four fields to
`null`. This stops App Machina from editing the repo. Previously
generated content and analysis results are not affected.

## Fields set on the project row [#fields-set-on-the-project-row]

The `projects` table has these GitHub-related columns:

* `github_installation_id: number | null`
* `github_repository_id: number | null`
* `github_repository_full_name: string | null`
* `github_default_branch: string | null`

There is no last-sync-time, webhook-health indicator, or in-UI branch
switcher on this page.
