> ## Documentation Index
> Fetch the complete documentation index at: https://docs.compyle.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# GitHub

Compyle seamlessly integrates with **GitHub**, allowing you to manage your project with standard Git workflows: **branches**, **commits**, and **pull requests**.

<Frame caption="GitHub Integration Overview">
  <iframe src="https://www.youtube.com/embed/70OtYU0Op74?si=B-Znx6DK-fUJMjfO" title="GitHub Integration" className="w-full aspect-video rounded-xl" />
</Frame>

***

## How it Works

Compyle treats every **task** as a dedicated **pull request (PR)** within your **repository**. This ensures that all AI-generated changes are traceable, isolated, and easy to review before merging.

<Callout icon="code-branch" iconType="duotone" color="#3CB878">
  <strong>Flexible Collaboration</strong><br />
  You can collaborate directly via the standard Git interface—manually pushing commits, creating branches, or managing PRs alongside the agent.
</Callout>

***

## Setup

GitHub is the heartbeat of Compyle. Since every task operates directly on a repository, a GitHub connection is mandatory to use the platform.

<Steps>
  <Step title="Automated Onboarding">
    When you first log in to Compyle, you will be prompted to connect your GitHub account. This ensures your workspace is ready for development from day one.
  </Step>

  <Step title="Install Compyle App">
    Authorize and install the **Compyle GitHub App** on your personal account or organization.
  </Step>

  <Step title="Grant Access">
    Create your first project and select the repositories you want the agent to work on, or create new repositories directly through Compyle.
  </Step>
</Steps>

<Callout icon="github" iconType="solid" color="#8a96a3ff">
  <strong>Mandatory Connection</strong><br />
  Compyle cannot function without a connected GitHub account, as it uses standard Git workflows to manage all code changes.
</Callout>

***

## Committing Changes

You can save your progress at any time directly from the editor:

1. Open the **Git** tab.
2. **Stage** the files you want to include.
3. Enter a descriptive **commit message**.
4. **Push** to sync your changes to the remote branch.

<Frame caption="Committing in Compyle">
  <img className="block dark:hidden rounded-2xl" src="https://mintcdn.com/compyle-01176785/ScdngifcjjAxbxJw/images/compyle-light-commit.png?fit=max&auto=format&n=ScdngifcjjAxbxJw&q=85&s=c2ef1dae7b21462e592487a49794ad1d" alt="Commit Interface Light" width="403" height="369" data-path="images/compyle-light-commit.png" />

  <img className="hidden dark:block rounded-2xl" src="https://mintcdn.com/compyle-01176785/ScdngifcjjAxbxJw/images/compyle-dark-commit.png?fit=max&auto=format&n=ScdngifcjjAxbxJw&q=85&s=38a891fae35535b67249f9d5a2b3c550" alt="Commit Interface Dark" width="403" height="369" data-path="images/compyle-dark-commit.png" />
</Frame>

***

## Pull Requests

Manage your integration workflow directly from Compyle:

* **Sync**: Pull the latest changes from your remote repository.
* **Push**: Upload your local commits to your feature branch.
* **PR**: Open a Pull Request for code review and merging.

This structured workflow keeps your main branch clean and your project history organized.

***

## Managing Repositories

In Compyle, repository management is handled at the project level.

* **Project-Specific Repos**: Select a target repository whenever you create a new project. Compyle will then handle all tasks as PRs or branches within that specific repo.
* **Permissions**: You can update repository access at any time through the **Integrations** tab in **Organization Settings** or directly via your GitHub App settings.
* **Disconnecting**: To remove access, navigate to **Integrations** and click **Disconnect**. You should also uninstall the Compyle App from your GitHub account if you wish to revoke all tokens.

<Card title="GitHub 101" icon="github" href="/tutorials/github">
  New to Git? Check out our beginner's guide to GitHub concepts.
</Card>
