pub enum ProviderConfig {
GitLab {
base_url: String,
access_token: SecretString,
scope: GitLabScope,
extra: HashMap<String, Value>,
},
GitHub {
base_url: String,
access_token: SecretString,
scope: GitHubScope,
extra: HashMap<String, Value>,
},
ClickUp {
access_token: SecretString,
scope: ClickUpScope,
extra: HashMap<String, Value>,
},
Jira {
base_url: String,
access_token: SecretString,
email: String,
scope: JiraScope,
flavor: Option<JiraFlavor>,
extra: HashMap<String, Value>,
},
Confluence {
base_url: String,
auth: ConfluenceAuthConfig,
scope: ConfluenceScope,
api_version: Option<String>,
extra: HashMap<String, Value>,
},
Fireflies {
api_key: SecretString,
extra: HashMap<String, Value>,
},
Slack {
base_url: String,
access_token: SecretString,
scope: SlackScope,
required_scopes: Vec<String>,
extra: HashMap<String, Value>,
},
Custom {
name: String,
config: HashMap<String, Value>,
},
}Expand description
Provider connection configuration with typed scope.
Each variant carries only the fields relevant to that provider. Scope is provider-specific — compiler prevents invalid combinations (e.g., GitLab Group scope on a GitHub provider).
Note: intentionally not Serialize/Deserialize. Provider configs
carry plaintext access tokens; serializing them to JSON would defeat the
SecretString discipline. Construct provider configs in-process from
Config + CredentialStore instead of round-tripping through transport.
Variants§
GitLab
GitHub
ClickUp
Jira
Fields
access_token: SecretStringflavor: Option<JiraFlavor>Explicit flavor override. When set, skips auto-detection from URL. Important for proxy scenarios where URL doesn’t reflect actual Jira deployment.
Confluence
Fireflies
Fireflies.ai meeting notes provider.
Slack
Slack messenger provider.
Custom
Fully dynamic variant for community/custom provider plugins.
Implementations§
Source§impl ProviderConfig
impl ProviderConfig
Sourcepub fn provider_name(&self) -> &str
pub fn provider_name(&self) -> &str
Returns the provider name as a static string.
Trait Implementations§
Source§impl Clone for ProviderConfig
impl Clone for ProviderConfig
Source§fn clone(&self) -> ProviderConfig
fn clone(&self) -> ProviderConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more