Replace the steps list with a single Python function that controls the whole run.
If you’d rather control the execution flow yourself, pass a single Python function as
the workflow’s steps instead of a list. You still get workflow features like storage,
streaming, and session management.
fully_python_workflow.py
from agno.workflow import Workflow, WorkflowExecutionInputdef custom_workflow_function(workflow: Workflow, execution_input: WorkflowExecutionInput): # Custom orchestration logic research_result = research_team.run(execution_input.input) analysis_result = analysis_agent.run(research_result.content) return f"Final: {analysis_result.content}"workflow = Workflow( name="Function-Based Workflow", steps=custom_workflow_function # Single function replaces all steps)workflow.print_response("Evaluate the market potential for quantum computing applications", markdown=True)