Skip to main content

GitHub

GitHub

Connect your ept AI chatbot with GitHub to access and search your repositories, documentation, and code for intelligent responses.

Back to Integrations Overview

Overview

The GitHub integration enables your ept AI chatbot to:

  • Search and access repository documentation and README files
  • Provide context-aware responses based on code documentation
  • Access both public and private repositories (with proper permissions)
  • Maintain secure OAuth authentication with GitHub

The integration uses secure OAuth authentication and follows the standard ept AI integration pattern: create an integration in the ept AI app, then configure a channel to use that integration.

Prerequisites

Before setting up the GitHub integration, ensure you have:

  • GitHub Account: Active GitHub account with repository access
  • Repository Access: Access to repositories you want to integrate
  • OAuth App Creation: Ability to create OAuth applications in GitHub
  • ept AI Setup: Your ept AI chatbot configured and ready

Setup Instructions

Step 1: Create OAuth Application in GitHub

  1. Create OAuth App in GitHub:

    • Go to GitHub Settings > Developer settings > OAuth Apps
    • Click "New OAuth App"
    • Configure the app:
      • Application name: "ept AI GitHub Integration"
      • Homepage URL: https://your-ept-ai-domain.com
      • Application description: "AI-powered repository documentation search and access"
      • Authorization callback URL: https://your-ept-ai-domain.com/oauth/github/callback
  2. Get OAuth Credentials:

    • Note your Client ID and Client Secret
    • These will be used to establish the OAuth connection

Step 2: Create GitHub Integration in ept AI

  1. Access Integration Settings:

    • Log into your ept AI dashboard
    • Navigate to Configuration > Integrations
    • Click "Create Integration"
    • Select "GitHub" from the available integrations
  2. Configure OAuth Connection:

    Client ID: your-github-client-id
    Client Secret: your-github-client-secret
    GitHub URL: https://github.com
    Redirect URI: https://your-ept-ai-domain.com/oauth/github/callback
  3. Authorize Connection:

    • Click "Connect to GitHub"
    • Complete the OAuth authorization flow
    • Grant necessary permissions to ept AI:
      • repo - Full control of private repositories
      • read:org - Read organization data
      • read:user - Read user profile data

Step 3: Configure GitHub Channel

  1. Create Channel:

    • Navigate to Configuration > Channels
    • Click "Create Channel"
    • Configure the channel:
      • Channel Name: "GitHub Documentation Assistant"
      • Channel Type: Select "GitHub"
      • Integration: Select the GitHub integration you created
      • Knowledge Source Configuration: Choose your documentation-focused KSC
  2. Configure Channel Settings:

    {
    "github_channel_config": {
    "integration_id": "github_integration_123",
    "knowledge_source": "github-docs-ksc",
    "repository_access": {
    "repositories": ["owner/repo1", "owner/repo2"],
    "include_private": true,
    "include_forks": false
    },
    "content_types": {
    "readme_files": true,
    "documentation": true,
    "wiki_pages": true,
    "issues": false,
    "pull_requests": false
    },
    "file_extensions": [".md", ".txt", ".rst", ".adoc"],
    "search_options": {
    "fuzzy_matching": true,
    "path_filtering": true,
    "relevance_threshold": 0.7
    }
    }
    }

Configuration Options

Repository Access Settings

  • Repository Selection: Specify which repositories to include
  • Private Repositories: Include private repositories (requires permissions)
  • Forked Repositories: Include or exclude forked repositories
  • Organization Repositories: Access repositories across your organization

Content Types

  • README Files: Access repository README and documentation files
  • Wiki Pages: Include GitHub wiki pages in search results
  • Documentation: Process documentation directories (docs/, .github/, etc.)
  • Issues & PRs: Include issue and pull request content (optional)
  • Code Files: Process specific file types for documentation

File Processing

  • File Extensions: Specify which file types to process (.md, .txt, etc.)
  • Path Filtering: Filter by specific directories or file paths
  • Content Extraction: Extract text content from documentation files
  • Format Preservation: Maintain markdown formatting and structure

Use Cases

Developer Support

  • Documentation Search: Quickly find relevant documentation and guides
  • Code Examples: Access code examples and implementation details
  • Troubleshooting: Find solutions to common development issues
  • Best Practices: Access coding standards and best practices

Project Management

  • Project Documentation: Access project README files and guides
  • Setup Instructions: Find installation and setup documentation
  • API Documentation: Access API documentation and examples
  • Contributing Guidelines: Access contribution and development guidelines

Knowledge Management

  • Documentation Synchronization: Keep AI knowledge current with repository updates
  • Content Discovery: Discover relevant documentation across repositories
  • Knowledge Gap Identification: Identify missing documentation
  • Content Quality: Improve documentation quality through AI feedback

Best Practices

Repository Organization

  1. Clear Documentation: Maintain well-structured README files
  2. Documentation Directories: Use consistent documentation folder structures
  3. Wiki Usage: Leverage GitHub wikis for detailed documentation
  4. Regular Updates: Keep documentation current with code changes

Integration Configuration

  1. Repository Selection: Only include relevant repositories for your use case
  2. Content Filtering: Use path filtering to focus on documentation
  3. File Type Selection: Choose appropriate file extensions for your content
  4. Access Control: Limit access to private repositories as needed

Security Considerations

  1. OAuth Scopes: Only request necessary permissions for security
  2. Private Repository Access: Carefully manage access to private content
  3. Token Security: Secure OAuth tokens and credentials
  4. Audit Logging: Monitor access to repository content

Troubleshooting

Common Issues

Authentication Problems:

  • Verify OAuth credentials are correct
  • Check that redirect URI matches exactly
  • Ensure proper OAuth scopes are configured

Repository Access:

  • Confirm access permissions to specified repositories
  • Check repository visibility settings (public/private)
  • Verify organization membership and permissions

Content Processing:

  • Verify documentation files exist in specified paths
  • Check file extension configuration
  • Review content extraction settings

Getting Help