Forge
csharp3407750f
1using AgentForge.Abstractions;
2using Microsoft.AspNetCore.Builder;
3using Microsoft.Extensions.Configuration;
4using Microsoft.Extensions.DependencyInjection;
5
6namespace AgentForge.Plugin.OAuth.GitHub;
7
8public sealed class OAuthGitHubForgePlugin : IForgePlugin
9{
10 public string Id => "oauth-github";
11
12 public string DisplayName => "GitHub OAuth (web sign-in)";
13
14 public void ConfigureServices(IServiceCollection services, IConfiguration configuration)
15 {
16 }
17
18 public void MapEndpoints(WebApplication app)
19 {
20 }
21
22 public void RegisterFeatures(ForgeFeatureRegistry registry) => registry.Add("oauth_github");
23
24 public void RegisterOAuthLoginContributors(ForgeOAuthLoginContributorRegistry registry)
25 {
26 registry.Add(new ForgeOAuthLoginContributor
27 {
28 ProviderId = "github",
29 PluginId = Id,
30 Order = 10,
31 RenderSignInControl = ForgeGitHubOAuthSignIn.RenderIconButton,
32 });
33 }
34}
35
View only · write via MCP/CIDE