Compendium.Adapters.GitHub
1.0.5-preview.4
dotnet add package Compendium.Adapters.GitHub --version 1.0.5-preview.4
NuGet\Install-Package Compendium.Adapters.GitHub -Version 1.0.5-preview.4
<PackageReference Include="Compendium.Adapters.GitHub" Version="1.0.5-preview.4" />
<PackageVersion Include="Compendium.Adapters.GitHub" Version="1.0.5-preview.4" />
<PackageReference Include="Compendium.Adapters.GitHub" />
paket add Compendium.Adapters.GitHub --version 1.0.5-preview.4
#r "nuget: Compendium.Adapters.GitHub, 1.0.5-preview.4"
#:package Compendium.Adapters.GitHub@1.0.5-preview.4
#addin nuget:?package=Compendium.Adapters.GitHub&version=1.0.5-preview.4&prerelease
#tool nuget:?package=Compendium.Adapters.GitHub&version=1.0.5-preview.4&prerelease
Compendium.Adapters.GitHub
A GitHub adapter for the Compendium Framework: a concrete IGitServer implementing
the Compendium.Abstractions.Git ports
against github.com and GitHub Enterprise Server.
What it does
- GitHub App auth — signs RS256 App JWTs and mints short-lived installation access tokens, caching them per installation and refreshing before expiry. Also passes through caller-supplied service-account, personal-access, and OAuth tokens.
- Repositories — create from a template, read metadata/contents/commits/branches, create tags, publish releases.
- CI configuration — repository, organization, and deployment-environment Actions secrets (libsodium sealed-box encrypted) and variables.
- Pipelines — trigger workflows (
workflow_dispatch) and read run status. - Environments — create/update/list deployment environments.
- Branch policies — GitHub repository rulesets (not legacy branch protection).
- Access control — teams, team membership, team/user repository roles.
- Webhooks — manage outbound subscriptions; verify and parse inbound deliveries (fail-closed HMAC-SHA256) into neutral events.
See CAPABILITIES.md for the full support matrix and its limitations.
Registration
services.AddGitHubGitServer(options =>
{
options.DefaultApp.AppId = configuration["GitHub:AppId"]!;
options.DefaultApp.AppSlug = configuration["GitHub:AppSlug"]!;
options.DefaultApp.PrivateKeyPem = secretStore["GitHub:PrivateKey"];
options.DefaultApp.WebhookSecret = secretStore["GitHub:WebhookSecret"];
});
Consumers resolve IEnumerable<IGitServer> and dispatch on Provider == "github",
or resolve a single concern-scoped port (IGitRepositoryService, IGitCredentialBroker, …).
Every operation takes a GitConnection explicitly — the adapter is a stateless
singleton and one instance serves any number of tenants.
Connections
| Credential | Auth |
|---|---|
GitCredential.AppInstallation |
Mints an installation token from the configured App (AppKey selects a registration). |
GitCredential.ServiceAccountToken / PersonalAccessToken |
Passed through as a bearer token. |
GitCredential.OAuthAccessToken |
Passed through (8-hour reported lifetime). |
Set GitConnection.ServerUrl to a GitHub Enterprise Server API base
(https://ghes.example.com/api/v3) to target GHES; leave it null for github.com.
License
MIT. See LICENSE.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net9.0
- Compendium.Abstractions.Git (>= 1.0.5-preview.4)
- Compendium.Core (>= 1.0.5-preview.4)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 9.0.16)
- Microsoft.Extensions.Http (>= 9.0.16)
- Microsoft.Extensions.Logging.Abstractions (>= 9.0.16)
- Microsoft.Extensions.Options (>= 9.0.16)
- Octokit (>= 14.0.0)
- Sodium.Core (>= 1.4.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.5-preview.4 | 2,449 | 7/24/2026 |
| 1.0.5-preview.3 | 188 | 7/24/2026 |
| 1.0.5-preview.2 | 66 | 7/24/2026 |