Public declaration syntax from forge-rs/crates/forge-agent/src/workflow.rs Original source SHA-256: 0a6608e099b46f95a1beebcfce376529dc8e906f639c7cb2333779f2938ab7b4 Function bodies and constant values are omitted. This is not the complete implementation. Source line 57 #[derive(Debug, Clone, Serialize, Deserialize)] pub struct WorkflowOutput { /// Individual outputs from each agent that executed. pub agent_outputs: Vec, /// Aggregate token usage across all agents in the workflow. pub total_usage: Usage, /// Total number of steps taken across all agents. pub total_steps: u32, /// The final text output of the workflow. /// /// For sequential workflows, this is the last agent's output. /// For parallel workflows, this is the concatenated outputs. /// For router workflows, this is the selected agent's output. pub final_text: String } Source line 102 pub struct SequentialWorkflow { } Source line 133 pub fn new(name: impl Into, agents: Vec>) -> Self; Source line 174 pub async fn execute(&self, prompt: &str) -> Result; Source line 271 pub struct ParallelWorkflow { } Source line 290 pub fn new(name: impl Into, agents: Vec>) -> Self; Source line 315 pub async fn execute(&self, prompt: &str) -> Result; Source line 408 pub struct RouterWorkflow { } Source line 432 pub fn new( name: impl Into, classifier: Arc, agents: Vec<(String, Arc)>, ) -> Self; Source line 464 pub async fn execute(&self, prompt: &str) -> Result;