pub struct WorkflowAgentDefinition {
pub name: String,
pub description: String,
pub version: String,
pub definition: Value,
pub input_schema: Option<Value>,
pub triggers: Vec<WorkflowTrigger>,
pub channels: Option<ChannelBindings>,
pub connections: Vec<ConnectionRequirement>,
pub tools: Option<ToolsConfig>,
}Expand description
Definition for a workflow-based agent.
The workflow definition is stored as JSON to avoid crate dependency on distri-workflow.
Deserialize to distri_workflow::WorkflowDefinition at execution time.
Fields§
§name: String§description: String§version: String§definition: ValueThe workflow definition as JSON.
input_schema: Option<Value>JSON Schema for required inputs (validated before execution).
triggers: Vec<WorkflowTrigger>Agent-level triggers — applied to the default entry point.
Empty = Manual only (direct API/UI invocation). Entry-point
triggers (in WorkflowDefinition.entry_points[*].triggers)
take precedence per-entry-point.
channels: Option<ChannelBindings>Channel chrome when this workflow agent backs a bot. Optional.
connections: Vec<ConnectionRequirement>Workspace connections this workflow needs. Resolved at run start —
each connection’s tokens are injected into ExecutorContext.env_vars
(usable from api_call steps via {env.X}), and the connection’s
MCP tools become available to tool_call steps by name.
Same shape as StandardDefinition.connections; the connection’s
own auth_scope (Workspace vs User) determines the fire mode for
triggered runs.
tools: Option<ToolsConfig>Explicit tool allowlist (mirrors StandardDefinition.tools).
Optional — when absent, the workflow agent gets the MCP tools
implied by its declared connections plus nothing else.
Trait Implementations§
Source§impl Clone for WorkflowAgentDefinition
impl Clone for WorkflowAgentDefinition
Source§fn clone(&self) -> WorkflowAgentDefinition
fn clone(&self) -> WorkflowAgentDefinition
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for WorkflowAgentDefinition
impl Debug for WorkflowAgentDefinition
Source§impl<'de> Deserialize<'de> for WorkflowAgentDefinition
impl<'de> Deserialize<'de> for WorkflowAgentDefinition
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 WorkflowAgentDefinition
impl JsonSchema for WorkflowAgentDefinition
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