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

# Install & Connect

> Install the Neo GitHub App on an org or account, link your Neo team, and understand reconnect, switch-org, and disconnect behavior.

This guide covers the full connection lifecycle for Neo on GitHub — first-time install, joining an org a teammate already installed, reconnecting, switching the active org, and disconnecting.

## Before You Start

You need:

* **A GitHub account** with permission to install the App (admin on the org, or install on your personal account).
* **A Neo account.** Any authenticated Neo user can start the connection. If you don't yet belong to a Neo team, Neo creates one for you during the install. If your team already has Neo installed on an org you're a member of on GitHub, you don't need to install again — you just authorize.

## Connect Neo To GitHub

Connect always starts with GitHub OAuth — not the install picker. That way Neo can immediately see whether your team already has Neo installed on a GitHub organization you're a member of, and surface it without making you install a duplicate.

<Steps>
  <Step title="Click Connect">
    From Settings → Applications → GitHub, click **Connect GitHub**. Neo opens a GitHub OAuth consent screen.
  </Step>

  <Step title="Authorize">
    Approve the OAuth request to link your GitHub identity to your Neo account. Single click.
  </Step>

  <Step title="Return to Neo">
    Neo confirms the connection and opens the Applications panel. If your team already has Neo installed on a GitHub organization you're a member of, that organization appears in the GitHub card's organization switcher — you can start commenting `@pdneo` on PRs in it immediately, no install required.
  </Step>

  <Step title="(Optional) Install Neo on a new organization">
    If no teammate install applies to you, or you want to add another org, click **+ Add organization** in the switcher. GitHub opens the install picker — pick the target, choose repositories, authorize. Install and OAuth complete in one click.
  </Step>
</Steps>

<Info>
  Neo connects in two stages because most users who join a Neo team don't need to install anything — a teammate already did. OAuth runs first so Neo knows who you are on GitHub; the install step (via **+ Add organization**) is only needed when you actually need to grant Neo access to a new org or account.
</Info>

### Going Directly To Install

If you'd rather skip the in-app Connect button and install Neo directly from GitHub, use the public install link:

<Card title="Install Neo for GitHub" icon="github" href="https://github.com/apps/neo-by-projectdiscovery/installations/new">
  Open the GitHub install picker and pick the org or account where you want Neo to operate. Install and OAuth complete in one click.
</Card>

## Switch Between Organizations

If your team has Neo installed on more than one org, the GitHub settings panel has an **organization switcher** at the top:

* click the dropdown to see every org you have access to
* select an org to scope the settings below to that install's repositories and defaults
* the choice persists across reloads (saved per-browser)
* the bottom of the dropdown has **+ Add another organization** — clicking that opens the GitHub install picker so you can install Neo on an additional org

## Add Another Organization

You can connect Neo to more orgs at any time, without disconnecting first.

<Steps>
  <Step title="Open the switcher">
    Settings → Applications → GitHub → Settings → click the org dropdown.
  </Step>

  <Step title="Click + Add another organization">
    GitHub opens the install picker on a new tab so you can pick another account or org to install on.
  </Step>

  <Step title="Approve">
    Install + OAuth completes in one click as usual.
  </Step>

  <Step title="Return">
    Neo confirms the new install and the org appears in the switcher alongside the existing ones.
  </Step>
</Steps>

## Reconnect An Existing Install

Reconnect re-runs the OAuth step without touching the install on GitHub. Use it when:

* you previously disconnected your Neo↔GitHub identity link and want to restore it
* your OAuth credentials need refreshing
* a teammate has rotated who is the registered installer

<Steps>
  <Step title="Open the card menu">
    Settings → Applications → GitHub → three-dot menu.
  </Step>

  <Step title="Click Reconnect">
    Neo opens GitHub's OAuth-only screen — the App is already installed, so there's no install picker.
  </Step>

  <Step title="Authorize">
    Single click. Your GitHub identity link is refreshed and Neo can resume operating on your behalf.
  </Step>
</Steps>

<Info>
  **Reconnect doesn't install anything.** It only re-runs OAuth. If the App has actually been uninstalled on github.com (rather than just disconnected in Neo), use the install link from the top of this page instead.
</Info>

## Disconnect Your GitHub Account

Disconnect is a **per-user** action that clears your Neo↔GitHub identity link. It does **not** touch the install on github.com and it does **not** affect your teammates.

<Steps>
  <Step title="Open the card menu">
    Settings → Applications → GitHub → three-dot menu → Disconnect.
  </Step>

  <Step title="Confirm">
    Neo clears your stored GitHub identity link. The install on the team stays exactly where it was.
  </Step>

  <Step title="(Optional) Reconnect later">
    Clicking Connect again re-runs OAuth and you're reconnected in one click. Existing installs you can access reappear in the switcher automatically.
  </Step>
</Steps>

<Warning>
  Disconnect is per-user, not team-wide. Teammates continue to see and use the install. To remove Neo's access to an org entirely, **uninstall the App on github.com** (Org settings → GitHub Apps → Configure → Uninstall). GitHub notifies Neo of the uninstall and Neo cleans up the install and its repo configs automatically.
</Warning>

## Ownership Rules

Neo enforces a clean install↔team relationship to avoid ambiguous ownership.

* Each GitHub App install is owned by the user whose OAuth completed the original install.
* Teammates of that user see and can use the install via Neo's **team trust** model.
* A GitHub-org-membership check guards visibility: even if a teammate installed Neo on an org, you only see it if you're also a GitHub member of that org.
* Per-repo access is enforced via GitHub's own collaborator check at use time — see [Admin & Permissions](/integrations/github-admin-and-permissions#per-repo-access-via-github-collaborator-check).

## Common Setup Scenarios

### You're A First-Time User With No Team Yet

Click Connect → authorize on GitHub → Neo creates a team for you and connects your GitHub identity. From the GitHub card, use **+ Add organization** to install Neo on the org or account where you want it to operate. You can rename the team and invite teammates later from team settings.

### Your Team Already Installed Neo On An Org You're A GitHub Member Of

Click Connect → authorize on GitHub → the org appears in your switcher immediately. No install step required — you're already covered by the teammate's install.

### Your Team Has An Install But You're Not A GitHub Member Of That Org

The teammate's install is hidden from your list because GitHub itself wouldn't grant you access to those repos. After Connect/OAuth your switcher will be empty — use **+ Add organization** to install Neo on an org or account you do own.

### You Want To Switch Which Org Settings Apply To

Use the **organization switcher** at the top of the GitHub settings panel. It rescopes the settings below without touching anything else.

### You Already Connected But Want To Uninstall Neo Entirely

Uninstall from github.com (Org settings → GitHub Apps → Configure → Uninstall). GitHub notifies Neo of the uninstall and Neo removes the install automatically. Don't try to delete it from inside Neo — github.com is the source of truth for installation existence.

## Next

* Day-to-day usage and commands: [Use Neo On GitHub](/integrations/github-use-neo-on-github)
* Permissions and configuration: [Admin & Permissions](/integrations/github-admin-and-permissions)
* Stuck somewhere: [Troubleshooting](/integrations/github-troubleshooting)
