Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.slipway.sh/llms.txt

Use this file to discover all available pages before exploring further.

Every slipway organization is anchored on a single GitHub App installation. This is a deliberate 1:1 invariant:
  • Installing the slipway GitHub App on a GitHub user or org creates one slipway organization.
  • Re-installing on the same GitHub account signs you back into the same slipway org.
  • Installing on a different GitHub account creates a different slipway org. Use the sidebar Add an organization to walk through that flow.

What the installation grants

The slipway GitHub App requests:
  • Repository contents (read) — to fetch slipway.yaml and clone for builds.
  • Pull requests (read & write) — to read PR metadata and post preview-status comments.
  • Checks (write) — to surface spec validation as a check on PR commits.
  • Webhooks — push, pull_request, installation, installation_repositories.
Repositories you don’t grant access to during install are invisible to slipway.

Adding repos to an existing installation

In GitHub, go to the installation settings (your account / org → Applications → slipway → Configure). Add or remove the repos slipway should see. GitHub fires an installation_repositories webhook; slipway updates the repo list automatically. If you want to force a resync (e.g. after a GitHub permissions change), use Settings → Integrations → Sync repos in slipway.

Reinstalling

If you ever uninstall slipway in GitHub and reinstall later, slipway recognizes the same installation_id (or, for new installations on the same account, links to the same slipway org via the unique account constraint). Your org isn’t recreated and your deployment history is preserved.

Webhooks slipway listens for

EventWhat happens
push to default branchA deployment is enqueued for the new commit.
pull_request opened / synchronizeA PR deployment is enqueued. The PR comment is posted or updated.
pull_request closedEvery deployment associated with the PR is torn down. The PR comment is updated to “Torn down”.
installationOrg-level install/uninstall is reflected in slipway.
installation_repositoriesRepo list is synced.
pingNo-op; just confirms webhook delivery.
slipway verifies the HMAC signature on every webhook before doing anything with it.