Github

Github logo

Github

Connect your Github data to Airweave

Overview

The Github connector allows you to sync data from Github into Airweave, making it available for search and retrieval by your agents.

Configuration

GitHubSource

GitHub source implementation.

Authentication

This connector uses a custom authentication configuration class: GitHubAuthConfig.

Authentication Configuration

GitHub authentication credentials schema.

personal_access_token
strRequired

GitHub Personal Access Token with repo scope

repo_name
strRequired

Repository to sync in owner/repo format (e.g., ‘airweave-ai/airweave’)

Entities

The following data models are available for this connector:

Schema for GitHub directory entity.

FieldTypeDescription
pathstrPath of the directory within the repository
repo_namestrName of the repository containing this directory
repo_ownerstrOwner of the repository

Schema for a GitHub repository.

References: https://docs.github.com/en/rest/repos/repos?apiVersion=2022-11-28

FieldTypeDescription
nameOptional[str]Name of the repository.
full_nameOptional[str]Full name (including owner) of the repo.
owner_loginOptional[str]Login/username of the repository owner.
privateboolWhether the repository is private.
descriptionOptional[str]Short description of the repository.
forkboolWhether this repository is a fork.
created_atOptional[datetime]When the repository was created.
updated_atOptional[datetime]When the repository was last updated.
pushed_atOptional[datetime]When the repository was last pushed.
homepageOptional[str]Homepage URL for the repository.
sizeOptional[int]Size of the repository (in kilobytes).
stargazers_countintNumber of stars on this repository.
watchers_countintNumber of people watching this repository.
languageOptional[str]Primary language of the repository.
forks_countintNumber of forks for this repository.
open_issues_countintNumber of open issues on this repository.
topicsList[str]Topics/tags applied to this repo.
default_branchOptional[str]Default branch name of the repository.
archivedboolWhether the repository is archived.
disabledboolWhether the repository is disabled in GitHub.

Schema for a GitHub repository’s content (file, directory, submodule, etc.).

References: https://docs.github.com/en/rest/repos/contents?apiVersion=2022-11-28

FieldTypeDescription
repo_full_nameOptional[str]Full name of the parent repository.
pathOptional[str]Path of the file or directory within the repo.
shaOptional[str]SHA identifier for this content item.
item_typeOptional[str]Type of content. Typically ‘file’, ‘dir’, ‘submodule’, or ‘symlink’.
sizeOptional[int]Size of the content (in bytes).
html_urlOptional[str]HTML URL for viewing this content on GitHub.
download_urlOptional[str]Direct download URL if applicable.
contentOptional[str]File content (base64-encoded) if retrieved via ‘mediaType=raw’ or similar.
encodingOptional[str]Indicates the encoding of the content (e.g., ‘base64’).