Skip to main content
Looking for git version control? See the git integration guides.
Omni’s GitHub AI integration extends the Omni Agent with the ability to search code and retrieve file contents from your GitHub repositories. This allows you to reference code, explore implementations, and incorporate technical context into your data analysis workflows. Using the GitHub integration, you could:
  • Reference implementation details - Review how a data model is implemented in your application code while analyzing the corresponding data in Omni
  • Validate assumptions - Check configuration files or schema definitions to verify how data is being collected or processed
  • Document findings - Pull code snippets to include technical context in your analysis or documentation
For example, you could ask: “Search for our user tracking code and then show me the distribution of user events from the analytics table” - combining code exploration with data analysis in a single conversation.

Common questions

No. The GitHub AI integration is different than the git integration.This integration allows the Omni Agent to use code and files in connected GitHub repositories as context, whereas the git integration allows you to implement git-based version control for model development.
Every Omni user that wants to use the GitHub AI integration must connect their GitHub account. This means that the Omni Agent will have the same permissions as the prompting user, accessing only the repositories they have access to.
Code search results and file contents are processed the same way as other AI features in Omni. Refer to AI data privacy for more information.

Setting up the GitHub integration

Requirements

To configure the GitHub integration for your Omni organization, you’ll need:
  • Organization Admin permissions in Omni
  • Permissions in GitHub that allow you to create apps
1

Register a GitHub app

1

Define basic app info

  1. In GitHub, navigate to your Developer settings.
    • For a personal app, click here for a direct link.
    • For an organization-owned app, replace <your-organization> in the following URL to create a direct link:
      https://github.com/organizations/<your-organization>/settings/apps/new
      
  2. Fill in the basic app info:
    • GitHub App Name - Enter a name for the app. For example, Omni AI Integration
    • Description - Optional. For example, “Enables the Omni Agent to search and read code from GitHub repositories”
    • Homepage URL - Enter the full URL of your Omni organization. For example, https://your-org.omniapp.co
2

Define user settings

In the Identifying and authorizing users section, define the fields as follows:
  • Callback URL - Copy and paste the following URL into this field:
    https://callbacks.omniapp.co/callback/github-ai
    
  • Expire user authorization tokens - Uncheck (disable) this option
  • Request user authorization (OAuth) during installation - Check (enable) this option
3

Disable webhooks

In the Webhook section, uncheck the Active option. Omni’s integration doesn’t use webhooks.
4

Define permissions

  1. In Repository permissions, set:
    • Contents - Read-only
    • Metadata - Read-only
  2. In Account permissions, set Email addresses to Read-only.
All other permissions can be left as No access.
5

Define app installation

In the Where can this app be installed? section, select an option based on your needs:
  • Only on this account — If the app is only for your organization
  • Any account — If multiple GitHub organizations need to connect
6

Complete the setup

Click Register application to complete the setup.
2

Generate a client secret

After registering the app:
  1. On the app’s settings page, scroll down to Client secrets.
  2. Click Generate a new client secret.
  3. Copy the secret immediately — it will only be shown once.
  4. Keep the Client ID handy, as you’ll need it in the next step.
3

Enable and configure the Omni integration

  1. In Omni, navigate to Settings > Integrations.
  2. Click the AI Integrations tab.
  3. Toggle the integration to on.
  4. You’ll be prompted for your credentials:
    • OAuth Client ID - Paste the Client ID from the app
    • OAuth Client Secret - Paste the Client secret from the app
  5. Click Save.
The integration will be available in your Omni organization. Each user must connect their individual accounts in their user settings to use the integration.

Connecting your GitHub account

This section applies to all users, not only admins. Every user who wants to use the AI integration must connect their account.
After the AI integration is enabled for your Omni organization, users will need to connect their individual accounts to use the integration:
1
In Omni, click your user icon and then Manage account.
2
Scroll down to the Connected Services section.
3
Next to the integration, click Connect.
4
Complete the authentication flow to connect your account.

Using GitHub in the Omni Agent

Before users can use GitHub with the Omni Agent, they will need to connect their GitHub accounts in their user settings.
Once your GitHub account is connected, you can ask the Omni Agent to search for code or retrieve specific files from your repositories.

Searching code

The Omni Agent can search across all repositories you have access to using GitHub’s code search. To search for code, ask questions like:
  • “Search my repositories for authentication logic”
  • “Find examples of how we handle error logging in our codebase”
  • “Look for database connection code in my projects”
The Agent returns matching snippets in the chat, including:
  • Repository name and owner
  • File path
  • Code snippet with surrounding context
  • Direct link to the file on GitHub

Retrieving files

You can also ask the Omni Agent to retrieve the full contents of a specific file from a repository:
  • “Show me the contents of config.yaml in my main repository”
  • “Fetch the authentication middleware file from the backend project”
  • “Get the README from the data-pipeline repository”
The Agent returns the full file contents inline, so you can review code, configuration, or documentation without leaving Omni.

Troubleshooting

This error can be caused by:
  • An incorrect or rotated client secret
  • An incorrect callback URL
  • An expired authorization code. Codes are single-use and expire after 10 minutes)
Tools will only become accessible after an individual user connects their GitHub account in their user settings. Verify that the user has connected their GitHub account.
If a user can’t see their private repositories:
  • The user may need to grant access to specific organizations when they complete the authorization flow
  • The GitHub App may need to be installed on the organization that owns the repositories

Next steps