This page is a work in progress and will be updated soon.

GitHub Integration

How Keystone integrates with GitHub for real-time repository analysis

Overview

Keystone uses a GitHub App to integrate with your repositories. This provides secure, granular access to your code and enables real-time updates through webhooks.

Webhook Events

Keystone listens to the following GitHub events:

Push events

Every push to a connected repository triggers the ingestion pipeline. Keystone fetches the new commits, analyzes the diffs, and updates its knowledge base.

Pull request events

Pull request activity is tracked to capture discussion context and review decisions that don't always appear in commit messages.

Managing connections

Adding repositories

You can add new repositories to an existing project from the project settings. The GitHub App installation flow lets you select which repositories Keystone has access to.

Removing repositories

To disconnect a repository, visit the project settings and remove the connection. This stops webhook processing but does not delete previously ingested data.

Reinstalling the app

If you need to change permissions or reinstall the GitHub App, you can do so from your GitHub organization settings under Installed GitHub Apps.

Troubleshooting

Webhooks not arriving

  • Verify the GitHub App is installed on the correct organization
  • Check that the repository is selected in the app's installation settings
  • Review webhook delivery logs in GitHub under Settings > Developer Settings > GitHub Apps

Ingestion stuck

  • Check the project dashboard for error messages
  • Ensure the repository is not empty
  • Large repositories may take longer to process initially