Skip to main content

Connect GitHub

Connecting GitHub lets Vessl pull your repositories and automatically deploy when you push. You only need to do this once per GitHub account or organization.

How it works

Vessl uses a GitHub App installation (not a personal access token). When you connect, you install the Vessl GitHub App on the GitHub account or organization that owns your repositories. Vessl then has access to those repositories and receives push webhooks for auto-deploy.

The installation is tied to the GitHub account that owns the repo — which might be your personal account, or an organization. It's not tied to the email you use to sign in to Vessl.

Connect your GitHub account

  1. Go to Integrations in the sidebar.
  2. Click Connect GitHub.
  3. You'll be redirected to GitHub's authorization page. Approve the OAuth consent.
  4. After approval, Vessl checks whether you have any existing GitHub App installations:
    • No existing installation → GitHub opens the App installation page automatically.
    • One existing installation → Vessl claims it automatically, no extra click needed.
    • Multiple installations → You'll see a picker to choose which account to link.
  5. On the GitHub App installation page, choose the account or organization that owns the repositories you want to deploy, then select which repositories to grant access to (specific repos, or all).

Once done, you're redirected back to Vessl and your connected account appears under Integrations → Connected Accounts.

Install on the repo's owner, not just your personal account

If your repo lives at your-org/my-app, you need to install the Vessl App on your-org — not on your personal GitHub account. If you don't see the right org in the list, you may need to request org admin approval or switch accounts on GitHub during the installation step.

Managing access

From the Connected Accounts section under Integrations, you can:

  • View repositories — browse or search the repos Vessl can access under each installation.
  • Deploy directly — click a repo to create a new app from it right away.
  • Adjust repository access — click "Select Repositories" or "View Repositories" to open the GitHub App settings page and change which repos are accessible.
  • Disconnect — remove the installation from Vessl. This doesn't uninstall the GitHub App from GitHub itself; you can reconnect it at any time.

If your installation gets revoked

If you uninstall the Vessl App from GitHub (or an org admin revokes it), Vessl detects this and marks the installation as suspended. Any app using that repo for auto-deploy will fail with a message asking you to reconnect.

To fix it:

  1. Go to Integrations and click Connect GitHub again.
  2. Re-install the Vessl App on the same account or organization.
  3. Vessl automatically re-links the installation to your existing apps on that account — no need to reconfigure each app.

Connecting multiple accounts

You can connect more than one GitHub account or organization. Each shows up separately under Connected Accounts, and you can deploy repos from any of them.