docs/features/feature-guides/ask-datahub-plugins/github.md
import FeatureAvailability from '@site/src/components/FeatureAvailability';
Note: Ask DataHub Plugins is currently in Private Beta. To enable this feature, please reach out to your DataHub customer support representative.
The GitHub Plugin connects Ask DataHub to GitHub via the GitHub MCP server, enabling the AI assistant to browse repositories, review code, raise pull requests, and more — all from within Ask DataHub.
With the GitHub plugin enabled, Ask DataHub can:
Example prompts:
The GitHub plugin uses User OAuth authentication — each user authenticates with their own GitHub account. You'll need to create a GitHub OAuth App and configure it in DataHub.
You can create the OAuth App under your organization (recommended) or your personal account:
https://github.com/organizations/<YOUR_ORG>/settings/applications| Field | Value |
|---|---|
| Application name | DataHub AI Plugin (or any name your team will recognize) |
| Homepage URL | https://<your-datahub-url> |
| Authorization callback URL | https://<your-datahub-url>/integrations/oauth/callback |
:::caution Callback URL
The Authorization callback URL must match the OAuth Callback URL shown in DataHub exactly (e.g. https://your-org.acryl.io/integrations/oauth/callback). You can copy this URL from the DataHub plugin creation form.
:::
| Field | Value |
|---|---|
| Name | GitHub |
| Description | A description for the plugin |
| Client ID | The client ID from Step 2 |
| Client Secret | The client secret from Step 2 |
| Default Scopes | repo (required — see below) |
:::warning Required Scope
You must include repo in the scopes so Ask DataHub can read repository code, commits, and pull requests. Without this scope, the plugin will have very limited functionality.
:::
:::tip Recommended: Add Custom Instructions The GitHub OAuth App grants access to all repositories the user can see — which can be a lot. We strongly recommend using the Instructions for the AI Assistant field to guide the AI toward the repositories and organizations most relevant to your data team. For example:
"Focus on the acme/data-platform and acme/etl-pipelines repositories. These contain our core data transformation and pipeline code. When looking for dbt models, check acme/dbt-models."
This helps the AI find relevant code faster and avoids searching across unrelated repos. :::
The steps are the same as above, except navigate to GitHub > Your Profile > Settings > Developer Settings > OAuth Apps instead of organization settings. When creating the app, open both GitHub and DataHub side by side — you'll need to copy the OAuth Callback URL from DataHub into GitHub, and the Client ID/Secret from GitHub into DataHub.
| Scope | Required | Access |
|---|---|---|
repo | Yes | Full access to repositories (code, PRs, issues) |
read:org | No | Read organization data (teams, members) |
user | No | Read user profile information |
Navigate to Settings > My AI Settings, find the GitHub plugin, and click Connect. A popup will open asking you to authorize the OAuth App on GitHub. After authorization, you'll be redirected back to DataHub. See the overview for more details.
<p align="center"> </p>Yes. A personal OAuth App works the same way — the scopes, authorization flow, and plugin configuration are identical. The difference is in management and access:
We recommend organization-level apps for production use. Personal apps are fine for testing or individual use.
If the authorization popup doesn't appear, check your browser's popup blocker settings and allow popups from your DataHub instance URL.
repo for full repository access