pub struct ConnectionRequirement {
pub provider: Option<String>,
pub connection_id: Option<Uuid>,
pub scopes: Vec<String>,
pub env_var: Option<String>,
pub required: bool,
}Expand description
Declarative reference to a connection that an agent definition requires.
Resolved at agent-run start: the orchestrator matches this against the
workspace’s connections table, fetches the secret (OAuth token / custom
fields / distri-native session), and injects the result into
ExecutorContext.env_vars + dynamic_values.available_connections.
Prefer provider (portable across workspaces) over connection_id.
Fields§
§provider: Option<String>Match by provider name (preferred): “google”, “slack”, …
Resolved against the Connection’s auth.provider for Oauth,
the Connection’s name for Custom, and "distri" for DistriNative.
connection_id: Option<Uuid>Pin to a specific connection ID. Takes precedence over provider.
scopes: Vec<String>Minimum OAuth scopes required. Resolution fails (when required=true)
or marks the requirement unmet (when required=false) if the connected
token doesn’t cover all of these.
env_var: Option<String>Env var name override. Default: <PROVIDER>_TOKEN for OAuth,
<PROVIDER>_<FIELD_KEY> for each Custom field.
required: boolIf true, the agent fails to start when this connection can’t be resolved.
If false (default), the agent starts and the requirement is surfaced in
{{available_providers}} so the LLM can prompt the user to connect.
Trait Implementations§
Source§impl Clone for ConnectionRequirement
impl Clone for ConnectionRequirement
Source§fn clone(&self) -> ConnectionRequirement
fn clone(&self) -> ConnectionRequirement
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl ComposeSchema for ConnectionRequirement
impl ComposeSchema for ConnectionRequirement
Source§impl Debug for ConnectionRequirement
impl Debug for ConnectionRequirement
Source§impl Default for ConnectionRequirement
impl Default for ConnectionRequirement
Source§fn default() -> ConnectionRequirement
fn default() -> ConnectionRequirement
Source§impl<'de> Deserialize<'de> for ConnectionRequirement
impl<'de> Deserialize<'de> for ConnectionRequirement
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl JsonSchema for ConnectionRequirement
impl JsonSchema for ConnectionRequirement
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read more