## Command Palette

Search for a command to run...

## GitHub

The Cursor GitHub app connects your repositories so you can use features like [Cloud Agents](/content/docs/cloud-agent/index.html) and [Bugbot](/content/docs/bugbot/index.html).

## [Setup](/content/docs/integrations/github#setup/index.html)

GitHub.com GitHub Enterprise Server

Requires Cursor admin access and GitHub org admin access.

1. Go to [Integrations in the dashboard](/content/dashboard/integrations/index.html)  
2. Click **Connect** next to GitHub (or **Manage Connections** if already connected)  
3. Choose **All repositories** or **Selected repositories**  
4. Return to the dashboard to configure features on your repositories

To disconnect your GitHub account, return to the integrations dashboard and click **Disconnect Account**.

## [IP allow list configuration](/content/docs/integrations/github#ip-allow-list-configuration/index.html)

If your organization uses GitHub's IP allow list feature to restrict access to your repositories, Cursor can be configured to use a hosted egress proxy with a narrow set of IPs.

Before configuring IP allowlists, contact [hi@cursor.com](mailto:hi@cursor.com) to enable this feature for your team. This is required for either configuration method below.

### [Enable IP allow list configuration for installed GitHub Apps (recommended)](/content/docs/integrations/github#enable-ip-allow-list-configuration-for-installed-github-apps-recommended/index.html)

The Cursor GitHub app has the IP list already pre-configured. You can enable the allowlist for installed apps to automatically inherit this list. This is the **recommended approach**, as it allows us to update the list and your organization receives updates automatically.

To enable this:
1. Go to your organization's Security settings  
2. Navigate to IP allow list settings  
3. Check **"Allow access by GitHub Apps"**

For detailed instructions, see [GitHub's documentation](https://docs.github.com/en/enterprise-cloud@latest/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization#allowing-access-by-github-apps).

### [Add IPs directly to your allowlist](/content/docs/integrations/github#add-ips-directly-to-your-allowlist/index.html)

If your organization uses IdP-defined allowlists in GitHub or otherwise cannot use the pre-configured allowlist, add the proxy IPs listed in [Git egress proxy and IP allow list](/content/docs/cloud-agent/security-network#git-egress-proxy-and-ip-allow-list/index.html).

## [Advanced networking](/content/docs/integrations/github#advanced-networking/index.html)

Self-hosted instances support multiple connection methods beyond IP whitelisting.

### PrivateLink (AWS) or Private Service Connect (GCP)

Available for Enterprise customers. Allow Cursor to access your instance over a private network connection. [Contact your Cursor representative](/content/contact-sales?source=docs-bugbot-private-network/index.html) for setup.

**Best for:** Instances behind a firewall on a private network in AWS, Azure, or GCP  
**Security:** HTTPS encryption with optional mTLS, PrivateLink/Service Connect, VPC allowlisting, service account access tokens  
**Drawbacks:** Only supports public clouds with private networking connections between VPCs

### Reverse Proxy Tunnel

Available for Enterprise customers. Run a reverse proxy tunnel on-premises that establishes a long-lived websocket connection to Cursor's servers. Network requests are forwarded through to your instance. Requires no inbound network access. [Contact your Cursor representative](/content/contact-sales?source=docs-bugbot-on-prem-proxy/index.html) for setup.

**Best for:** Environments without inbound network access  
**Security:** HTTPS encryption, service account access tokens  
**Drawbacks:** Introduces additional complexity, maintenance requirements, and potential security considerations compared to more direct connection methods

## [Permissions](/content/docs/integrations/github#permissions/index.html)

The GitHub app requests the following permissions to support Cursor features:

| Permission           | Purpose                                                                          |
|----------------------|----------------------------------------------------------------------------------|
| **Repository access**| Clone your code and create working branches                                       |
| **Pull requests**    | Create PRs and leave review comments                                             |
| **Issues**           | Track bugs and tasks discovered during reviews                                   |
| **Checks and statuses** | Report on code quality and test results                                        |
| **Actions and workflows** | Monitor CI/CD pipelines and deployment status                                 |

All permissions follow the principle of least privilege.

## [Troubleshooting](/content/docs/integrations/github#troubleshooting/index.html)

### Agent can't access repository

- Install the GitHub app with repository access
- Check repository permissions for private repos
- Verify your GitHub account permissions

### Permission denied for pull requests

- Grant the app write access to pull requests
- Check branch protection rules
- Reinstall if the app installation expired

### App not visible in GitHub settings

- Check if installed at organization level
- Reinstall from [github.com/apps/cursor](https://github.com/apps/cursor)
- Contact support if installation is corrupted

## [Next steps](/content/docs/integrations/github#next-steps/index.html)

Once your GitHub integration is connected, configure the features that use it:

- [Bugbot](/content/docs/bugbot/index.html) — automated PR reviews that catch bugs and security issues
- [Cloud Agents](/content/docs/cloud-agent/index.html) — AI agents that run in the cloud on your repositories
