pub fn new() -> Self {
        Self {
            agents: Vec::new(),
            variables: HashMap::new(),
            commands: Vec::new(),
            model: None,
            max_walker_depth: None,
            custom_rules: None,
            temperature: None,
            top_p: None,
            top_k: None,
            max_tokens: None,
            tool_supported: None,
            updates: None,
            templates: None,
        }
    }
Creates a new empty workflow with all fields set to their empty state.
This is useful for testing where you want to build a workflow from
scratch.
crates/forge_domain/src/workflow.rs