Forge
csharp3407750f
1namespace AgentForge.Options;
2
3public sealed class ForgeOptions
4{
5 public const string SectionName = "Forge";
6
7 public string PublicBaseUrl { get; set; } = "http://127.0.0.1:8770";
8
9 public string DatabasePath { get; set; } = "./data/forge.witdb";
10
11 public string ReposPath { get; set; } = "./data/repos";
12
13 public string GitBaseUrl { get; set; } = "ssh://git@127.0.0.1";
14
15 public int GitSshPort { get; set; } = 22;
16
17 public string CiCallbackToken { get; set; } = "";
18
19 public string CiWebhookUrl { get; set; } = "";
20
21 public string CiWebhookSecret { get; set; } = "";
22
23 public string GitHookSecret { get; set; } = "";
24
25 public string BootstrapToken { get; set; } = "";
26
27 public bool RequireAuth { get; set; }
28
29 public bool RequireGitHookSecret { get; set; }
30
31 public string GitSshSymlinkRoot { get; set; } = "";
32
33 public ForgeOAuthOptions OAuth { get; set; } = new();
34
35 /// <summary>Runtime override for active bundle (empty = use manifest active_bundle).</summary>
36 public string PluginBundle { get; set; } = "";
37
38 /// <summary>Plugin DLL directory (empty = {app}/plugins). Env: FORGE_PLUGINS_PATH.</summary>
39 public string PluginsPath { get; set; } = "";
40
41 /// <summary>When true, watch plugin folder and restart on DLL changes (dev). Env: FORGE_WATCH_PLUGINS.</summary>
42 public bool WatchPlugins { get; set; }
43
44 public string DefaultOrgSlug { get; set; } = "";
45
46 /// <summary>open | invite_only | github_org. Env: FORGE_OAUTH_SIGNIN_POLICY.</summary>
47 public string OAuthSignInPolicy { get; set; } = "open";
48
49 /// <summary>GitHub org login filter when policy=github_org. Env: FORGE_OAUTH_GITHUB_ORG.</summary>
50 public string OAuthGitHubOrg { get; set; } = "";
51
52 public bool OrgAutoMemberOnLogin { get; set; }
53
54 /// <summary>GitHub PAT for org repo import (list + mirror). Env: FORGE_GITHUB_IMPORT_TOKEN.</summary>
55 public string GitHubImportToken { get; set; } = "";
56
57 /// <summary>Default catalog mapping TOML. Env: FORGE_IMPORT_CATALOG_PATH.</summary>
58 public string ImportCatalogPath { get; set; } = "";
59
60 /// <summary>Override embedded [import] policy. Env: FORGE_IMPORT_VISIBILITY_POLICY.</summary>
61 public string ImportVisibilityPolicy { get; set; } = "";
62
63 /// <summary>Relative to app base directory (FORGE-ADR-0019 M1 static registry).</summary>
64 public string RegistryIndexPath { get; set; } = "registry/plugins.index.json";
65}
66
View only · write via MCP/CIDE